考虑到 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/