| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- import Foundation
- import Moya
- enum RemoteService {
- case login
- case upload(classifier: String, id: String, image: Data)
- }
- extension RemoteService: TargetType {
- var baseURL: URL { URL(string: "http://94.141.168.254:8080")! }
- var path: String {
- switch self {
- case .login:
- return "login"
- case .upload:
- return "upload"
- }
- }
- var method: Moya.Method {
- switch self {
- case .login:
- return .post
- case .upload:
- return .post
- }
- }
- var sampleData: Data {
- Data()
- }
- var task: Task {
- switch self {
- case .login:
- return .requestPlain
- case let .upload(classifier, id, image):
- return .uploadMultipart(
- [
- .init(provider: .data(classifier.data(using: .utf8)!), name: "classifier"),
- .init(provider: .data(id.data(using: .utf8)!), name: "id"),
- .init(
- provider: .data(image),
- name: "image",
- fileName: "image.jpeg",
- mimeType: "image/jpeg"
- )
- ]
- )
- }
- }
- var headers: [String: String]? {
- switch self {
- case .login:
- return ["Content-type": "application/json"]
- case .upload:
- return ["Content-type": "multipart/form-data"]
- }
- }
- }
|