2013-10-15 130 views
6

随着AFNetworking我想上传一个图像(1280x990)与大小:33695.下面的代码完美适用于较小的图像(即:390x390),但较大的图像会引发错误:AFNetworking将不允许大文件上传

[client POST:@"/upload_image" parameters:nil constructingBodyWithBlock:^(id <AFMultipartFormData>formData) { 

    [formData appendPartWithFileData:imageData name:@"image" fileName:@"image.jpg" mimeType:@"image/jpeg"]; 

} success:^(NSURLSessionDataTask * task, id responderData) { 

} failure:^(NSURLSessionDataTask * task, NSError * error) { 

}]; 

ERROR抛出:

NSDebugDescription = "JSON text did not start with array or object and option to allow fragments not set."; 

我已经搜查了许多其他职位,似乎没有要任何提及的问题具有较大的图像尺寸。有什么建议么?

+1

提高作为服务器发回一个非JSON响应的结果的错误?收到的实际响应是什么。你用Charles来看看实际发送/接收的是什么吗? – Wain

+1

错误不是服务器发回非JSON响应的结果,我使用了查尔斯,甚至没有发出服务器调用。但是,如果图像较小(即:将图像大小调整为320x320),呼叫就会熄灭,一切都很美妙。似乎AFHTTPSessionManager不喜欢较大的文件。 – Silverstar

+0

这是一个服务器端问题。服务器发送错误的JSON请联系服务器的人。 – Mohit

回答

1

根据AFNetworking的作者,plz使用appendPartWithFileURL来代替。因为数据将从磁盘流出。

0

我在尝试使用AFNetworking时遇到了类似的问题。自从我转而使用RestKit和SDWebImage来处理图像的异步加载和缓存......并且它就像一个魅力一样。你可能想看看这个最近的Quora文章,以更好地比较它们之间的差异....主要是对Restkit的一个认识是异步和缓存,但只需很少的努力,SDWebImage会用一行代码来处理这个问题。

http://www.quora.com/iOS-Development/RestKit-vs-AFNetworking-What-are-the-pros-and-cons