使用alamofire和auth令牌将图像上传到第三方服务

时间:2017-09-14 01:59:08

标签: swift http alamofire

我一直在尝试使用他们的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。 如果你能用解决方案附上解释,我将非常感激。

0 个答案:

没有答案
相关问题