我一直在尝试使用他们的api和alamofire将我的图片上传到第三方网站,以获取有关已上传图片的一些信息。我必须传递auth令牌以获取访问其资源的请求,这是他们提供的指令,
"图片应由其网址指定或通过参数'数据'上传多部分表格。您应该分别使用GET和POST方法。"
我一直在尝试以5种不同的方式实现上传方法但是它们似乎都没有工作我得到了responseSerializationFailed(Alamofire.AFError.ResponseSerializationFailureReason.jsonSerializationFailed(错误域= NSCocoaErrorDomain代码= 3840 \"无效值在字符2周围。\" UserInfo = {NSDebugDescription =字符2周围的值无效。}))"这里的错误是负责上传的功能之一:
let headers: HTTPHeaders = [ "Authorization": "Bearer \(authToken)" ]
let URL = try! URLRequest(url: "url", method: .post, headers: headers)
Alamofire.upload(multipartFormData: { multipartFormData in
multipartFormData.append(imageData, withName: "signImg", fileName: "picture.png", mimeType: "image/png")
}, with: URL, encodingCompletion: {
encodingResult in
switch encodingResult {
case .success(let upload, _, _):
upload.responseJSON { response in
debugPrint("SUCCESS RESPONSE: \(response)")
}
case .failure(let encodingError):
// hide progressbas here
print("ERROR RESPONSE: \(encodingError)")
}
})
我也不了解用于附加multipartformdata的参数的含义,例如withName,filetype,mimeType。 如果你能用解决方案附上解释,我将非常感激。