5 multipartform-data content-length http-headers swift alamofire
我在服务器端获得的请求缺少content-length每个多部分的请求.
我试图更改标题但仍然无法显示.
我使用Alamofire/multipart form-data成功地将图像文件和一些数据从设备/模拟器发送到服务器.
var parameters = […]
let url = try! URLRequest(url: “URL”, method: .post, headers: ["Content-type": "multipart/form-data"])
Alamofire.upload(multipartFormData: { (multipartFormData) in
for (key, value) in parameters {
multipartFormData.append((value.data(using: String.Encoding.utf8)!), withName:key)
}
multipartFormData.append(UIImageJPEGRepresentation(image!, 0.5)!, withName: “Image”, mimeType: "image/jpeg")
}, to: "\(url)" , encodingCompletion: {(encodingResult) in
switch encodingResult {
case .success(let upload, _, _):
//print(result)
upload.uploadProgress(closure: { (Progress) in
self.progressView.progress = Float(Progress.fractionCompleted)
print("Upload Progress: \(Progress.fractionCompleted)")
})
print("REQUEST = \(request)")
print(encodingResult)
upload.responseJSON { response in
//self.delegate?.showSuccessAlert()
print( response.request) // original URL request
print(response.response) // URL response
print(response.data) // server data
print(response.result) // result of response serialisation
// self.showSuccesAlert()
//self.removeImage("frame", fileExtension: "txt")
if let JSON = response.result.value {
print("JSON: \(JSON)")
}
}
case .failure(let encodingError):
//self.delegate?.showFailAlert()
print(encodingError)
}
})
Run Code Online (Sandbox Code Playgroud)
更新:即使保持headers: nil,它也不会出现.
收到alamofire: -
--alamofire.boundary.cc9684e085522290
Content-Disposition: form-data; xyz="abc"
123456
--alamofire.boundary.cc9684e085522290
Run Code Online (Sandbox Code Playgroud)
如何获取每个多部分数据的内容长度?
| 归档时间: |
|
| 查看次数: |
834 次 |
| 最近记录: |