AFNet3.0上传图片
很多iOS应用都会遇到需要上传图片的情况,比如修改个人资料时需要上传自己的头像,最近我也遇到了这种情况,首先参考之前写过的AFNetWorking3.0处理请求头和请求内容。
我们在上述博客的基础之上进行修改,假设我们正在修改个人资料,里面需要修改个人头像和其他资料,用请求头进行用户识别,请求内容包括其他的个人资料。
首先是请求的URL,
NSString *url = @"your url";
接下来定义AFHTTPSessionManager,
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
设置相关的请求头,通过requestSerializer来实现,可以根据自己的需求定义一个或者多个请求头,
[manager.requestSerializer @"value1" forHTTPHeaderField:@"key1"];
[manager.requestSerializer @"value2" forHTTPHeaderField:@"key2"];
......
实现带请求内容的POST方法,这里一些文本性质的个人资料可以直接在parameters中进行设置,但是图片需要另外处理,先将UIImage对象转化成NSData对象,
NSData *imgData = UIImagePNGRepresentation(UIImage对象);
最后将图片作为请求的内容进行上传,
[manager POST:url
       parameters:@{
                    @"key1":@"value1",
                    @"key2":@"value2"
                    ......
                    }
constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
    [formData appendPartWithFileData:imgData name:@"key3" fileName:@"avatar.png" mimeType:@"image/png"];
}
        progress:nil
         success:^(NSURLSessionTask *task, id responseObject) {
             NSLog("response:%@", responseObject);
             }
         }
         failure:^(NSURLSessionTask *task, NSError *error) {
             NSLog(@"error:%@", error);
         }];
通过以上过程就实现了利用AFNetWorking 3.0上传图片的过程,上传其他文件类型同理。
AFNet3.0上传图片的更多相关文章
- 关于Asp.Net Mvc3.0 使用KindEditor4.0 上传图片与文件
		
http://blog.csdn.net/fyxq14hao/article/details/7245502 今天我们的Asp.Net Mvc 3的项目中,把KindEditor3.9改为 KindE ...
 - MVC3.0 上传图片并生成缩略图
		
转自:http://mikelai.blog.163.com/blog/static/18411126620118771732675/ Controller: public ActionResult ...
 - Servlet3.0上传图片示例
		
一.前端JSP页面 <%@page pageEncoding="UTF-8"%><!DOCTYPE html><html><head> ...
 - Thinkphp5.0上传图片与运行python脚本
		
这里只体现了php可以通过批处理文件调用python脚本的效果 控制器代码 访问路径为127.0.0.1/index/index/upload. index模块,index控制器,upload方法. ...
 - yii2.0上传图片
		
model: 1 use Yii; 2 public $imageUpload; 3 public function rules() 4 { 5 return [ 6 [['imageUpload'] ...
 - dt4.0上传图片总是压缩解决办法,为什么我设置了不压缩图片,程序还是压缩呢?
		
即使后台设置也解决不了图片被压缩的厄运如图: 解决办法: 这个是上传控件名称和版本号 这个是文件的路径 在文档中找到 compress: 把windth和height后面的1600 改成更大的数值就可 ...
 - HTTPS链式编程——AFNetworking 3.0
		
1. HTTPS 证书认证(导入相关证书) #pragma mark - https认证 - (AFSecurityPolicy*)customSecurityPolicy { // 先导入证书 NS ...
 - aspx页面中用Input 标签实现上传图片功能
		
实现上传图片功能需单独的建立一个aspx页面, 其中前台页面需要注意两点: a)实现上传功能的input的type="file" b)设置请求报文头为 enctype=" ...
 - ThinkPHP5上传图片并压缩为缩略图
		
使用thinkphp开发app后端中,需要实现一个处理上传图片队列的功能 这是个上传多图片保存并且需要对其中一张图片进行压缩的功能 (使用的html5 mui框架开发app,如果直接载入原图,app客 ...
 
随机推荐
- virtualenvwrapper的安装及问题解决
			
安装virtualenvwrapperyum install python-setuptools python-develpip install virtualenvwrapper # linux下 ...
 - 泳池迷宫(p24)
			
/*2018年8月26日15:55:29作者:冰樱梦page-24泳池迷宫*/public class swiming{public static void main(String[] args){i ...
 - 静态NAT地址转换
			
1.配置路由器端口ip(两个端口需要设置两个网段) Router(config)#inter f0/1 Router(confiog-if)#ip add 202.1.1.2 255.255.255. ...
 - Asp.Net MVC part4 异步、校验、区域Area
			
异步方式1:使用jquery的异步函数方式2:使用MVC的AjaxHelper行为的返回值设置:JsonResult对象,使用Json方法接收一个对象,在内部会完成对象的js序列化,向输出流中输出js ...
 - 在WinRT程序中使用MEF
			
今天试了一下在WinRT中使用MEF,这里简单的介绍一下步骤. 首先,使用NuGet安装MEF 然后,就可以使用MEF组装插件了,简单的示例如下: interface ILogger { ...
 - mongodb_服务端安装及连接
			
安装环境:Windows7 64位 附件内容: 1.mongodb Windows7 补丁:451413_intl_x64_zip.exe 2.mongodb Windows 安装程序:mon ...
 - Redis设置使用几号库
			
Redis中SpringBoot项目中的配置: 1.引入 spring-boot-starter-redis(POM.XML) <dependency> <groupId>or ...
 - Oracle的日志记录模式
			
本篇摘自 http://www.cnblogs.com/cnjava/archive/2012/04/09/2439497.html --=============================== ...
 - http://zhidao.baidu.com/link?url=3tJ_i5gyYLrd7rFPk0eRYre_oxjCZvTOMOutp89LGhUgi6Ic6Ncama_GMAHnwfF73SVYGqy364vDfv6AY4ERPa
			
http://zhidao.baidu.com/link?url=3tJ_i5gyYLrd7rFPk0eRYre_oxjCZvTOMOutp89LGhUgi6Ic6Ncama_GMAHnwfF73SV ...
 - 【Hadoop】伪分布式环境搭建、验证
			
Hadoop伪分布式环境搭建: 自动部署脚本: #!/bin/bash set -eux export APP_PATH=/opt/applications export APP_NAME=Ares ...