【问题标题】:Uploading image to Uploadcare.com using AlamoFire使用 AlamoFire 将图像上传到 Uploadcare.com
【发布时间】:2017-02-18 05:56:27
【问题描述】:

我不确定如何使用 Alamofire 将图像上传到 Uploadcare.com (reference)。我应该给出图像或二进制数组的路径?我不确定将字符串转换为Data 对象是否正确

 func uploadPhoto(imageToUpload : UIImage){

        let keyJson = ("<my_api_key>").data(using: .utf8)!
        let uploadStore = "1".data(using: .utf8)
        let imageData = UIImageJPEGRepresentation(imageToUpload, 0.2)

        Alamofire.upload(
            multipartFormData: { multipartFormData in
                multipartFormData.append(keyJson, withName: "UPLOADCARE_PUB_KEY")
                multipartFormData.append(uploadStore!, withName: "UPLOADCARE_STORE")
                multipartFormData.append(imageData!, withName: "file")
            },
            to: "https://upload.uploadcare.com/base/",
            encodingCompletion: { encodingResult in
                switch encodingResult {
                case .success(let upload, _, _):
                    upload.responseJSON { response in
                        debugPrint(response)
                    }
                case .failure(let encodingError):
                    debugPrint(encodingError)
                }
            }
        )
    }

结果:

[Response]: <NSHTTPURLResponse: 0x6100002390a0> { URL: https://upload.uploadcare.com/base/ } { status code: 400, headers {
    "Access-Control-Allow-Credentials" = true;
    "Access-Control-Allow-Headers" = "X-PINGOTHER, DNT";
    "Access-Control-Allow-Methods" = "POST, OPTIONS";
    "Access-Control-Allow-Origin" = "*";
    "Access-Control-Max-Age" = 1;
    Connection = "keep-alive";
    "Content-Length" = 31;
    "Content-Type" = "text/html; charset=utf-8";
    Date = "Sun, 09 Oct 2016 18:41:45 GMT";
    Server = nginx;
    "X-Frame-Options" = DENY;
} }

【问题讨论】:

标签: ios swift swift3 xcode8


【解决方案1】:

正如我所见,使用 Alamofire 有两种方法可以做到这一点。您可以使用像public func append(_ fileURL: URL, withName name: String) 这样获取文件URL 的函数,并为它们提供一个文件URL。或者您可以将图像转换为数据并使用public func append(_ data: Data, withName name: String)等函数发送

【讨论】:

    猜你喜欢
    • 2018-03-02
    • 1970-01-01
    • 2017-06-19
    • 1970-01-01
    • 2018-01-19
    • 2016-06-07
    • 1970-01-01
    • 2016-12-19
    • 1970-01-01
    相关资源
    最近更新 更多