项目中有一个主要的功能,就是上传图片,结结果移动真的是很奇怪,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. 解除SQL对组件"Ad Hoc Distributed Queries"的"STATEMENT'OpenRowset OpenDatasource"的访问

      SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为 ...

  2. python-操作csv文件

    import csv lv,er=[],[] #读 with open('date.csv') as mycsv: reader=csv.DictReader(mycsv) for row in re ...

  3. Intel+Ardruino 101 翻转时点灯

    /*  ===============================================  Example sketch for CurieIMU library for Intel(R ...

  4. fgets函数

    打开文件 fopen("需要打开的路径") 然后使用fgets函数读取行 #include <stdio.h> #include <stdlib.h> #i ...

  5. C#单独启动进程的几种方式

    本文实例讲述了C#启动进程的几种常用方法.分享给大家供大家参考.具体如下: 1.启动子进程,不等待子进程结束 private void simpleRun_Click(object sender, S ...

  6. linux内核3.4基于wakeup_source的autosleep机制分析

    点击打开链接 一:wakeup_source简介: linux 3.4内核PM使用了wakeup_source来保持唤醒状态,也就是keep awake.之前android一直是基于Linux加入了w ...

  7. 发布网站详细步骤(.Net)

    (i)打开需要发布的网站 右键需要发布的项目 点击下拉框新建配置文件,输入配置文件名称,点击确定,下一步 发布方法选文件系统,目标位置:项目的根目录 配置选Release 点击发布 (ii) 打开ii ...

  8. (原创)IP协议Header部分的Checksum计算方法

  9. window svn链接

    我学会怎么建立window SVN服务器了 今天,终于学会怎么自己搭建SVN服务了,以前一直用的都是公司的SVN服务,没接触过,觉得很神秘,曾经我一个同事弄了好几天,也没搭成,对我打击挺大的:( 觉得 ...

  10. spring aop搭建redis缓存

    SpringAOP与Redis搭建缓存 近期项目查询数据库太慢,持久层也没有开启二级缓存,现希望采用Redis作为缓存.为了不改写原来代码,在此采用AOP+Redis实现. 目前由于项目需要,只需要做 ...