ASIHTTPRequest 对GET POST 请求简包
1.ASIHTTPRequest一个简短的引论
github下载链接https://github.com/pokeb/asi-http-request
2.ASIHTTPRequest 对GET和POST请求简单封装
+(void)requestWithASIURL:(NSString *)urlString parmas:(NSMutableDictionary *)params httpMethod:(NSString *)method completeBlock:(RequestFinishBlock)block{
//处理GET请求
if ([[method uppercaseString] isEqualToString:@"GET"]) {
NSArray *keys=[params allKeys];
for (int i=0; i<keys.count; i++) {
NSString *key=[keys objectAtIndex:i];
NSString *values=[params valueForKey:key];
urlString= [urlString stringByAppendingFormat:@"&%@=%@",key,values];
} }
NSURL *url=[NSURL URLWithString:urlString];
ASIFormDataRequest *request=[ASIFormDataRequest requestWithURL:url];
[request setRequestMethod:method];
[request setTimeOutSeconds:10];
//处理POST请求
if ([[method uppercaseString] isEqualToString:@"POST"]) {
NSArray *keys=[params allKeys];
for (int i=0; i<keys.count; i++) {
NSString *key=[keys objectAtIndex:i];
NSString *value=[params objectForKey:key];
if ([value isKindOfClass:[UIImage class]]) {
// NSString *filePath = [[NSBundle mainBundle] pathForResource:@"test4" ofType:@"gif"];
// NSData* data=[NSData dataWithContentsOfFile:filePath];
NSData *imageData=UIImageJPEGRepresentation(value, 1.0);
[request addData:imageData forKey:key];
}
[request setPostValue:value forKey:key]; }
} [request setCompletionBlock:^{
NSData *data=[request responseData];
NSJSONSerialization *json=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
block(json);
}];
[request startAsynchronous]; }
3.调用格式
NSString* urlString=@"http://192.168.1.101:8080/PengFu/jokController/getPhoneJok";
NSMutableDictionary *params=[NSMutableDictionary dictionaryWithObject:@"1 " forKey:@"rows"];
UIImage *image=[UIImage imageNamed:@"test3.gif"];
[params setObject:image forKey:@"pic"];
[params setObject:@"test gif image upload" forKey:@"status"]; [DataService requestWithASIURL:urlString1 parmas:params httpMethod:@"POST" completeBlock:^(id result) {
NSLog(@"%@",result);
}];
4.注意事项
版权声明:本文博主原创文章,博客,未经同意不得转载。
ASIHTTPRequest 对GET POST 请求简包的更多相关文章
- iOS开发之Socket通信实战--Request请求数据包编码模块
实际上在iOS很多应用开发中,大部分用的网络通信都是http/https协议,除非有特殊的需求会用到Socket网络协议进行网络数 据传输,这时候在iOS客户端就需要很好的第三方CocoaAsyncS ...
- I/O 请求数据包
MSDN原文:https://msdn.microsoft.com/zh-cn/library/windows/hardware/hh439638(v=vs.85).aspx 发送到设备驱动程序的大部 ...
- python 3 处理HTTP 请求的包
http http: https://docs.python.org/3/library/http.html http是一个包,里面含有多个模块:http.client,http.server,htt ...
- unity 打包资源及网络请求资源包
第一步 导包 在Assets新建一个Editor目录 新建一个Test类 using UnityEngine; using System.Collections; using UnityEditor; ...
- 使用Charles进行网络请求抓包解析
使用Charles进行网络请求抓包解析 0. 懒人的福音(⌐■_■)(破解版下载地址,记得安装java库支持) http://pan.baidu.com/s/1c08ksMW 1. 查看电脑的ip地址 ...
- Selenium爬虫实践(踩坑记录)之ajax请求抓包、浏览器退出
上一篇: 使用Selenium截取网页上的图片 前言 最近在搞公司内部系统,累的一批,需要从另一个内部系统导出数据存到数据库做分析,有大量的数据采集工作,又没办法去直接拿到那个系统的接口,太难了,只能 ...
- ASIHTTPRequest 详解, http 请求终结者
转:http://www.cnblogs.com/chen1987lei/archive/2011/06/07/2074636.html ASIHTTPRequest是一款极其强劲的HTTP访问开源项 ...
- 使用Fiddler针对Android手机网络请求抓包
本文转载自大牛Trinea的博文:Android利用Fiddler进行网络数据抓包 主要介绍Android及IPhone手机上如何利用Fiddler进行网络数据抓包,比如我们想抓某个应用(微博.微信. ...
- python 2 处理HTTP 请求的包
httplib httplib: https://docs.python.org/2/library/httplib.html python 的官方文档这样说明: This module define ...
随机推荐
- android 在你的UI中显示Bitmap - 开发文档翻译
由于本人英文能力实在有限,不足之初敬请谅解 本博客只要没有注明“转”,那么均为原创,转贴请注明本博客链接链接 Displaying Bitmaps in Your UI 在你的UI中显示Bitmap ...
- stm32f103 TIM1初始化--定时器应用
//TIM1 分频 #define TIM1_DIV1 (1-1) #define TIM1_DIV2 (2-1) #define TIM1_DIV4 (4-1) #define TIM1_DIV8 ...
- Hbase经常使用命令
hbase shell命令的使用 再使用hbase 命令之前先检查一下hbase是否执行正常 hadoop@Master:/usr/hbase/bin$ jps 2640 HMaster 27170 ...
- hdu3294(manacher)
传送门:Girls' research 题意:求最长回文串并输出位置及转换后的字符串. 分析:manacher算法算出最长回文串后记录中心位置,然后再转换回原字符串的起始和结束位置. #pragma ...
- MyEclipse配置启动多个Tomcat
在实际开发中常常会遇到多个项目同一时候进行,来回切换不太方便,这时可分别部署在多个tomcat下. 改动一些配置可同一时候启动多个tomcat 一開始查阅相关文档,看到一篇文章一个Myeclipse同 ...
- jQuery拖动调整表格列宽度-resizableColumns
实现鼠标可拖动调整表格列宽度 如图: 一.引入文件: <script src="/js/jquery-1.8.0.min.js" type="text/javasc ...
- mysql联合索引的应用
有一个log表,结构是这样的: CREATE TABLE `weblog` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `ip` varc ...
- html5载入JS引用
直接上代码 w文件 <?xml version="1.0" encoding="UTF-8"? > <div xmlns="http ...
- 測试JSON RPC远程调用(JSONclient)
#include <string> #include <iostream> #include <curl/curl.h> /* 标题:JSonclient Auth ...
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block 到目前为止,我们使用的模块都是在同一个配置 ...