ios - 从 IOS 上传图像文件到 Web 服务器

标签 ios swift file-upload swift2 nsurlsession

考虑到 IOS9 和 swift 2,用 java 将图像文件上传到 Web 服务器的最佳方法是什么。

经过搜索,我意识到有人提出了类似的问题,并且网上有许多不同的方法可以上传图片。但是我不确定最好的方法是什么。

我尝试了以下方法并注意到上传图像大约需要一分钟。

****方法一:****

使用 NSURLSession 并调用 java servlet 的“POST”方法 按照此 example 中的说明作为 JSON 发送

按照 example 中的说明将图像附加到 httpbody 本身

****方法 2:****

使用 NSURL 并调用 javascript 方法,如此 example

我还阅读了有关 AFNetworking 2.0 ( ex ) 的信息,我不确定它是否可以为上传过程带来任何性能提升。

我们的用户每天可能拍摄大约 100 张图片,这些图片需要上传到网络服务器进行进一步处理。

请审阅并提出您的观点。非常感谢。

最佳答案

从您的图像中创建 base64 字符串并将其发送到网络服务器。

let imageData = UIImageJPEGRepresentation(imageURL.image!, 0.5)
let base64String = imageData!.base64EncodedStringWithOptions([])

在您的网络服务器中,读取输入图像字符串并按如下方式解析。

byte[] imageBytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(base64Image);

然后你可以用字节做任何你喜欢的事情:

BufferedImage img = ImageIO.read(new ByteArrayInputStream(imageBytes));

关于ios - 从 IOS 上传图像文件到 Web 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33255669/

相关文章:

objective-c - 使用 Objective-C 下载大量图像

ios - 如何使用 AVAssetResourceLoader?

ios - iOS 7 和 iOS 8 中的动态单元格高度 - 我只能在 iOS 7 中支持 heightForRowAtIndexPath 吗?

iOS 9 中的 IOS UISearchBar 背景色

ios - 更改 AlertController 的布局

ios - 在转换前检查 String 是否有货币符号

ios - Clean Swift - 没有 segue 的路由

file-upload - node.js connect-form 图片上传到tmp目录

Angular HttpClient HttpErrorResponse JSON 中的意外 token 位于位置 0

javascript - 使用javascript获取文件的目录