// // UserApi.swift // fiveConstant // // Created by 李建 on 2023/1/29. // import Foundation import Moya import SwiftyUserDefaults enum UserApi { case curent case myRooms case roomInfo(recordId: String) } extension UserApi: TargetType { var headers: [String : String]? { return ["Authorization": "Bearer \(Defaults[\.token] ?? "")"] } var baseURL: URL { return URL(string: BASE_URL)! } var path: String { switch self { case .curent: return "/api/v1/users/current" case .myRooms: return "/api/v1/rooms" case .roomInfo(let recordId): return "/api/v1/rooms/\(recordId)" } } var method: Moya.Method { switch self { case .curent: return .get default: return .get } } var task: Moya.Task { switch self { case .curent: return .requestPlain case .myRooms: return .requestParameters(parameters: ["q": "list", "home_id": Defaults[\.defaultHomeId] ?? ""], encoding: URLEncoding.default) case .roomInfo: return .requestPlain } } }