项目中有一个主要的功能,就是上传图片,结结果移动真的是很奇怪,WiFi,联通,电信都没有问题的情况下,居然在移动下不行,真的是很头疼。不过好在最后是解决了

  项目的网络请求我是采用ASIHttpRequest,提交类型是直接提交文件上去的,后来采用data提交还是不行,把图片改小,又试了几种方法都不行的情况下果断百度,结果过只看到有人问没有人回答,真的很悲剧,好不容易找到个回答的,采用的是原生的网络编写方式,各种服务器连接,因为我知识浅薄,从没做过服务器,有点看不懂,而服务开发的同事,又不懂我的问题,研究了两天之后,还是放弃了那种做法(原帖的链接找不到了,找到了会放上来)。

  几次尝试之后实在不行,我不得不放弃了ASIHttpRequest,因为总所周知,虽然它很强大,但是因为已经停止维护了,随着以后iOS的发展还不知道能用多久,长痛不如短痛,就放弃了,随后对比了一下,选择了MKNetworkKit,不为别的,就为他那完美的自动缓存功能,结果试了一下,居然还是不行,我就惊慌了,这到底是怎么回事。随后又和服务器沟通了一下,好像服务器是没问题的,我这边也素手无策了,最后问题暂缓解决。

  随后我被借用到另一个开发组,不巧的是,还是有这个图片上传功能,硬伤呀,而且这个功能是软件的主要功能,一定要解决,做吧,想来想去,与其在旧问题上累死不如用新的方式解决一下,换个网络框架这次用AFNetworking。

  AFNetworking应该是现在苹果开发网络框架用的最多的了,最后的结果就是,用这个就轻松的成功,提交方式采用的data。因为新的项目服务器人员也换了,所以到底是AFNetworking强大,还是服务器的问题,因为时间比较紧,暂时没有深入研究,我现在也不是很好说,但是解决了,还是很开心,在这里先记上一笔。

说了一堆废话,献上小段代码以供参考:

NSData *imageData = UIImageJPEGRepresentation(imageDocument, 0.5);

ChumenlaHTTPClient *chu = [ChumenlaHTTPClient sharedChumenlaHTTPClient];

NSMutableURLRequest *request =  [chu multipartFormRequestWithMethod:@"POST"path:@"AddTopic.ashx"parameters:testDic constructingBodyWithBlock:^(id <AFMultipartFormData>formData)

{

[formData appendPartWithFileData:imageData name:[imageDictionary objectForKey:@"imageName"] fileName:[imageDictionary objectForKey:@"fileName"] mimeType:@"image/jpg"];

}];

AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request,NSHTTPURLResponse *response ,id JSON)

{

} failure:^(NSURLRequest *request,NSHTTPURLResponse *response,NSError *error,id JSON)

{

}];

[chu enqueueHTTPRequestOperation:operation];

  

iOS移动下上传图片失败解决 (上传多图,带其他参数)的更多相关文章

  1. ios系统下,html5拍照上传的压缩处理

    http://gokercebeci.com/dev/canvasresize 通过canvas和base64的处理方式实现大尺寸照片的压缩和上传 介绍: https://github.com/zev ...

  2. iOS开发网络篇—文件的上传

    iOS开发网络篇—文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代 ...

  3. iOS 开发http post 文件的上传

    iOS开发网络篇—文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代 ...

  4. 在ASP.NET MVC下实现单个图片上传, 客户端服务端双重限制图片大小和格式, 服务端裁剪图片

    在"MVC文件图片ajax上传轻量级解决方案,使用客户端JSAjaxFileUploader插件01-单文件上传"一文中,使用JSAjaxFileUploader这款插件实现了单文 ...

  5. 百度编辑器ueditor批量上传图片或者批量上传文件时,文件名称和内容不符合,错位问题

    百度编辑器ueditor批量上传附件时,上传后的文件和实际文件名称错误,比如实际是文件名“dongcoder.xls”,上传后可能就成了“懂客.xls”.原因就是,上传文件时是异步上传,同时进行,导致 ...

  6. 解决nginx上传模块nginx_upload_module传递GET参数

    解决nginx上传模块nginx_upload_module传递GET参数的方法总结 最近用户反映我们的系统只能上传50M大小的文件, 希望能够支持上传更大的文件. 很显然PHP无法轻易实现大文件上传 ...

  7. Debian下自动备份文件并上传到远程FTP服务器且删除指定日期前的备份Shell脚本

    说明:  1.备份目录/home/osyunwei下面所有的文件到/home/osyunweibak里面,并且保存为osyunwei20120701.tar.gz的压缩文件格式(2012_07_01是 ...

  8. vue-quill-editor富文本编辑器,上传图片自定义为借口上传

    vue-quill-editor富文本编辑器,上传图片自定义为借口上传 博客地址:https://blog.csdn.net/lyj2018gyq/article/details/82585194

  9. linux下常用FTP命令 上传下载文件【转】

    1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...

随机推荐

  1. Android JPush(极光推送)的使用教程

    首先进入官网https://www.jpush.cn/,先注册一个账号. 注册号以后,创建应用 1.点击右上角进入个人中心 2.点击创建应用 3.在创建应用界面输入自己项目的应用名和应用的包名,输入后 ...

  2. [转] ubuntu开启SSH服务

    点击阅读原文 SSH分客户端openssh-client和openssh-server如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo ...

  3. YTU 2346: 中序遍历二叉树

    原文链接:https://www.dreamwings.cn/ytu2346/2606.html 2346: 中序遍历二叉树 时间限制: 1 Sec  内存限制: 128 MB 提交: 12  解决: ...

  4. jQuery右键菜单contextMenu使用实例

    在最近项目中需要频繁的右键菜单操作.我采用了contextMenu这款jQuery插件. 参考网址:http://www.jb51.net/article/58709.htm 官网demo http: ...

  5. 两个img之间出现间隙的解决方法

    今天写了个小页面,发现了一个问题,两个包在a标签里的img之间总是有间隙,不能挨在一起,最后在同事的帮助下,找到解决的办法是,设置img的基线,css代码如下: img{vertical-align: ...

  6. C library function - freopen()

    Description The C library function FILE *freopen(const char *filename, const char *mode, FILE *strea ...

  7. shell awk入门

    本文参考自 http://www.cnblogs.com/zhuyp1015/archive/2012/07/11/2586985.html awk:好用的数据处理工具 awk 也是一个非常棒的数据处 ...

  8. javascript this在事件中的应用

    this关键字在javascript中是非常强大的,但是如果你不清楚它是怎么工作的就很难使用它. function dosomething(){ this.style.color="#fff ...

  9. [bzoj1452][JSOI2009]Count(树状数组)

    1452: [JSOI2009]Count Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 2057  Solved: 1216[Submit][Stat ...

  10. IP和端口的相关检测

    1.查看自己电脑的ip,使用ipconfig命令 2.检测某个ip是否可以连通,直接使用ping命令 3.windows下查看本机都有哪些端口开放,使用netstat -anp tcp 命令 4.查看 ...