-1

我可以毫无问题地将图像发布到 Rails 应用程序:

 curl -v include --form image=@filename.jpg https://my_url_goes_here.com/path/to/imageupload

...但是当我尝试使用 Alamofire.upload 上传时,我在服务器上看到“UTF-8 中的无效字节序列”错误,并且没有保存任何内容。

'image' 是一个有效的 UIImage。

    let pictureData = UIImageJPEGRepresentation(image!, 0.8)

    Alamofire.upload(.POST, "https://my_url_goes_here.com/path/to/imageupload", pictureData)
        .progress { (bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) in
            println(totalBytesWritten)
        }
        .responseJSON { (request, response, JSON, error) in
            println(JSON)
    }
}

Alamofire.upload 应该将 NSData 作为参数(并可能在尝试上传之前对其进行适当编码),所以我不确定这里出了什么问题。

4

1 回答 1

0

FWIW,我应该更仔细地阅读 Alamofire 文档——我试图做的文件上传需要作为多部分数据,Alamofire 还不支持……所以在这里使用 AFNetworking 及其内置的多部分表单上传支持工作。

于 2014-12-05T07:02:20.030 回答