forked from loafle/openapi-generator-original
[swift5]: support arrays in multipart/form-data (#13383)
* [swift5]: support arrays in multipart/form-data * update samples
This commit is contained in:
parent
072740754b
commit
7ff47dc0bf
@ -103,23 +103,25 @@ private var managerStore = SynchronizedDictionary<String, Alamofire.Session>()
|
|||||||
|
|
||||||
let upload = manager.upload(multipartFormData: { mpForm in
|
let upload = manager.upload(multipartFormData: { mpForm in
|
||||||
for (k, v) in self.parameters! {
|
for (k, v) in self.parameters! {
|
||||||
switch v {
|
for v in (v as? Array ?? [v]) {
|
||||||
case let fileURL as URL:
|
switch v {
|
||||||
if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
|
case let fileURL as URL:
|
||||||
mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
|
if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
|
||||||
} else {
|
mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
|
||||||
mpForm.append(fileURL, withName: k)
|
} else {
|
||||||
|
mpForm.append(fileURL, withName: k)
|
||||||
|
}
|
||||||
|
case let string as String:
|
||||||
|
mpForm.append(string.data(using: String.Encoding.utf8)!, withName: k)
|
||||||
|
case let number as NSNumber:
|
||||||
|
mpForm.append(number.stringValue.data(using: String.Encoding.utf8)!, withName: k)
|
||||||
|
case let data as Data:
|
||||||
|
mpForm.append(data, withName: k)
|
||||||
|
case let uuid as UUID:
|
||||||
|
mpForm.append(uuid.uuidString.data(using: String.Encoding.utf8)!, withName: k)
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(v) with key \(k)")
|
||||||
}
|
}
|
||||||
case let string as String:
|
|
||||||
mpForm.append(string.data(using: String.Encoding.utf8)!, withName: k)
|
|
||||||
case let number as NSNumber:
|
|
||||||
mpForm.append(number.stringValue.data(using: String.Encoding.utf8)!, withName: k)
|
|
||||||
case let data as Data:
|
|
||||||
mpForm.append(data, withName: k)
|
|
||||||
case let uuid as UUID:
|
|
||||||
mpForm.append(uuid.uuidString.data(using: String.Encoding.utf8)!, withName: k)
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(v) with key \(k)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, to: URLString, method: xMethod, headers: nil)
|
}, to: URLString, method: xMethod, headers: nil)
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -103,23 +103,25 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
|
|||||||
|
|
||||||
let upload = manager.upload(multipartFormData: { mpForm in
|
let upload = manager.upload(multipartFormData: { mpForm in
|
||||||
for (k, v) in self.parameters! {
|
for (k, v) in self.parameters! {
|
||||||
switch v {
|
for v in (v as? Array ?? [v]) {
|
||||||
case let fileURL as URL:
|
switch v {
|
||||||
if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
|
case let fileURL as URL:
|
||||||
mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
|
if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
|
||||||
} else {
|
mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
|
||||||
mpForm.append(fileURL, withName: k)
|
} else {
|
||||||
|
mpForm.append(fileURL, withName: k)
|
||||||
|
}
|
||||||
|
case let string as String:
|
||||||
|
mpForm.append(string.data(using: String.Encoding.utf8)!, withName: k)
|
||||||
|
case let number as NSNumber:
|
||||||
|
mpForm.append(number.stringValue.data(using: String.Encoding.utf8)!, withName: k)
|
||||||
|
case let data as Data:
|
||||||
|
mpForm.append(data, withName: k)
|
||||||
|
case let uuid as UUID:
|
||||||
|
mpForm.append(uuid.uuidString.data(using: String.Encoding.utf8)!, withName: k)
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(v) with key \(k)")
|
||||||
}
|
}
|
||||||
case let string as String:
|
|
||||||
mpForm.append(string.data(using: String.Encoding.utf8)!, withName: k)
|
|
||||||
case let number as NSNumber:
|
|
||||||
mpForm.append(number.stringValue.data(using: String.Encoding.utf8)!, withName: k)
|
|
||||||
case let data as Data:
|
|
||||||
mpForm.append(data, withName: k)
|
|
||||||
case let uuid as UUID:
|
|
||||||
mpForm.append(uuid.uuidString.data(using: String.Encoding.utf8)!, withName: k)
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(v) with key \(k)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, to: URLString, method: xMethod, headers: nil)
|
}, to: URLString, method: xMethod, headers: nil)
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -455,60 +455,62 @@ private class FormDataEncoding: ParameterEncoding {
|
|||||||
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
|
||||||
|
|
||||||
for (key, value) in parameters {
|
for (key, value) in parameters {
|
||||||
switch value {
|
for value in (value as? Array ?? [value]) {
|
||||||
case let fileURL as URL:
|
switch value {
|
||||||
|
case let fileURL as URL:
|
||||||
|
|
||||||
urlRequest = try configureFileUploadRequest(
|
urlRequest = try configureFileUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
fileURL: fileURL
|
fileURL: fileURL
|
||||||
)
|
)
|
||||||
|
|
||||||
case let string as String:
|
case let string as String:
|
||||||
|
|
||||||
|
if let data = string.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let number as NSNumber:
|
||||||
|
|
||||||
|
if let data = number.stringValue.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
case let data as Data:
|
||||||
|
|
||||||
if let data = string.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
urlRequest = configureDataUploadRequest(
|
||||||
urlRequest: urlRequest,
|
urlRequest: urlRequest,
|
||||||
boundary: boundary,
|
boundary: boundary,
|
||||||
name: key,
|
name: key,
|
||||||
data: data
|
data: data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
case let uuid as UUID:
|
||||||
|
|
||||||
|
if let data = uuid.uuidString.data(using: .utf8) {
|
||||||
|
urlRequest = configureDataUploadRequest(
|
||||||
|
urlRequest: urlRequest,
|
||||||
|
boundary: boundary,
|
||||||
|
name: key,
|
||||||
|
data: data
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
fatalError("Unprocessable value \(value) with key \(key)")
|
||||||
}
|
}
|
||||||
|
|
||||||
case let number as NSNumber:
|
|
||||||
|
|
||||||
if let data = number.stringValue.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
case let data as Data:
|
|
||||||
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
|
|
||||||
case let uuid as UUID:
|
|
||||||
|
|
||||||
if let data = uuid.uuidString.data(using: .utf8) {
|
|
||||||
urlRequest = configureDataUploadRequest(
|
|
||||||
urlRequest: urlRequest,
|
|
||||||
boundary: boundary,
|
|
||||||
name: key,
|
|
||||||
data: data
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
fatalError("Unprocessable value \(value) with key \(key)")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user