作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经学会了两种在服务器上上传图像的方法(可能还有更多..)。
1) 创建 NSData 并将其添加到请求正文中
2)创建字节数组并像简单数组一样以json形式发送
1) 创建 NSData 并将其添加到请求正文
使用此代码从图像创建 NSData
NSData *imageData = UIImagePNGRepresentation(myimage);
然后将其添加到请求正文中
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
[body appendData:[NSData dataWithData:imageData]];
[request setHTTPBody:body];
执行请求,图像将上传到服务器。
2)创建字节数组并像简单数组一样以 json 形式发送
创建图像字节数组
NSData *imageData = UIImagePNGRepresentation(myimage);
const unsigned char *bytes = [imageData bytes];
NSUInteger length = [imageData length];
NSMutableArray *byteArray = [NSMutableArray array];
for (NSUInteger i = 0; i<length; i++)
{
[byteArray addObject:[NSNumber numberWithUnsignedChar:bytes[i]]];
}
而不是像任何其他数组一样使用 JSON 在请求中发送它
但是哪个是更好的解决方案,或者还有另一种更快的方法..
最佳答案
最简单和最快的方法是使用普通的 http POST 和 html 发送图像。
因为无论如何你都在使用 NSMutableRequest 来发送 POST 请求。因此,唯一重要的是数据的大小和获取原始图像所需的处理。因此,为了显着提高性能,您必须确保使用最少数量的 block 通过 web 发送项目,同时处理开销最小。
希望这article可以帮助您做出选择。
如果需要,您可以使用一些压缩方案进一步减小大小,例如 this ,如果您有固定尺寸问题。
关于ios - 哪种方式在服务器上上传图片更好(更快),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24678503/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!