NetWorkApi.swift 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. //
  2. // NetWorkApi.swift
  3. // naiyoup
  4. //
  5. // Created by C Auto on 2021/6/2.
  6. //
  7. import HandyJSON
  8. class NetworkApi{
  9. static let shared = NetworkApi()
  10. private init () {
  11. }
  12. }
  13. extension NetworkApi{
  14. //登录
  15. func login(username:String,password:String,success: @escaping Success<LoginModel?>,
  16. failure: @escaping Failure){
  17. let url = "/api/client/v2/login"
  18. NetWorkTools.getNormalRequestWith(url: url, param: ["email":username,"password":password], networkType: .normalRequest,method:.post) { response in
  19. let data = JSONDeserializer<LoginModel>.deserializeFrom(dict: response as? Dictionary)
  20. success(data ?? nil)
  21. } failure: { error in
  22. failure(error)
  23. }
  24. }
  25. //注册
  26. func reg(usernik:String,username:String,password:String,success: @escaping Success<LoginModel?>,
  27. failure: @escaping Failure){
  28. let url = "/api/client/v2/register"
  29. NetWorkTools.getNormalRequestWith(url: url, param: ["username":usernik,"email":username,"password":password], networkType: .normalRequest,method:.post) { response in
  30. let data = JSONDeserializer<LoginModel>.deserializeFrom(dict: response as? Dictionary)
  31. success(data ?? nil)
  32. } failure: { error in
  33. failure(error)
  34. }
  35. }
  36. //获取节点
  37. func GetNode(success:@escaping Success<[NodelModel]>,failure: @escaping Failure) {
  38. let url = "/api/client/v2/nodes"
  39. NetWorkTools.getNormalRequestWith(url: url, param: [:], networkType:.normalRequest,method: .get) { response in
  40. var nolist = [NodelModel]()
  41. if let data = [NodelModel].deserialize(from: response as? Array){
  42. data.forEach { d in
  43. if let v = d{
  44. nolist.append(v)
  45. }
  46. }
  47. }
  48. success(nolist)
  49. } failure: { error in
  50. failure(error)
  51. }
  52. }
  53. //用户用户信息
  54. func GetProfile(success:@escaping Success<UserModel?> ,failure: @escaping Failure) {
  55. let url = "/api/client/v2/iosprofile"
  56. NetWorkTools.getNormalRequestWith(url: url, param: ["zfversion":"1.0.5"], networkType:.normalRequest,method: .get) { response in
  57. let data = JSONDeserializer<UserModel>.deserializeFrom(dict: response as? Dictionary)
  58. success(data ?? nil)
  59. } failure: { error in
  60. failure(error)
  61. }
  62. }
  63. //验证并获取 节点
  64. func Auth(success:@escaping Success<NodelModel?> ,failure: @escaping Failure){
  65. let url = "/api/client/v2/authUser"
  66. NetWorkTools.getNormalRequestWith(url: url, param: [:], networkType:.normalRequest,method: .get) { response in
  67. let data = JSONDeserializer<NodelModel>.deserializeFrom(dict: response as? Dictionary)
  68. success(data ?? nil)
  69. } failure: { error in
  70. failure(error)
  71. }
  72. }
  73. }