【发布时间】:2016-04-27 08:14:37
【问题描述】:
我最近一直在尝试让 AFNetworking 像处理本机请求一样工作,我一直使用 AFNetworking 上传 POST 或 GET。但它从未正确上传我的图像。它总是上传到损坏的服务器,我已经在这个参考中解释了这个问题:Uploading image to server reached damaged using AFNetworking
我已尝试将本机 NSURLConnection.sendSynchronousRequest 与 HTTP 正文一起使用,它已上传且未损坏。并且这段代码完全可以工作,但我在 AFNetworking 中需要它,因为它只支持 IOS 8 + 以及更多原因。
let baseURL = ""
let selectedImage = self.userImage.image
let imageData = NSData(data: UIImageJPEGRepresentation(selectedImage!, 0.5)!)
let request = NSMutableURLRequest()
request.URL = NSURL(string: baseURL)
request.HTTPMethod = "POST"
request.addValue("image/jpeg", forHTTPHeaderField: "Content-Type")
let body = NSMutableData(data: imageData)
request.HTTPBody = body
do {
let responseData = try NSURLConnection.sendSynchronousRequest(request, returningResponse:nil)
let responseString = String(data: responseData, encoding: NSUTF8StringEncoding)
print("User image successfully uploaded navigating to home services")
} catch (let error as NSError) {
}
【问题讨论】:
-
顺便说一句,如果你的项目是 Swift,你或许应该使用 AlamoFire 而不是 AFNetworking(来源:这个 SO 答案stackoverflow.com/a/32988602/433373)
-
它做同样的工作,我只需要发送 HTTP 正文和库无关紧要。
标签: ios swift http afnetworking