NSMutableURLRequest实现Post请求
2015-12-24 20:43
429 查看
[cpp] view
plaincopy
NSData *bodyData = [[bodyString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]dataUsingEncoding:NSUTF8StringEncoding];//把bodyString转换为NSData数据
NSURL *serverUrl = [[NSURL URLWithString:RequestUrl] URLByAppendingPathComponent:urlStr];//获取到服务器的url地址
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:serverUrl
cachePolicy:NSURLRequestReloadIgnoringLocalCacheData
timeoutInterval:10];//请求这个地址, timeoutInterval:10 设置为10s超时:请求时间超过10s会被认为连接不上,连接超时
[request setHTTPMethod:@"POST"];//POST请求
[request setHTTPBody:bodyData];//body 数据
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"];//请求头
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];//同步发送request,成功后会得到服务器返回的数据
//返回的数据 根据系统的不同会返回不同编码的数据,比如windows 为GBK,Ubuntu 为UTF8.。。
//注意转换编码格式
转自:http://blog.csdn.net/like7xiaoben/article/details/8735390
plaincopy
NSData *bodyData = [[bodyString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]dataUsingEncoding:NSUTF8StringEncoding];//把bodyString转换为NSData数据
NSURL *serverUrl = [[NSURL URLWithString:RequestUrl] URLByAppendingPathComponent:urlStr];//获取到服务器的url地址
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:serverUrl
cachePolicy:NSURLRequestReloadIgnoringLocalCacheData
timeoutInterval:10];//请求这个地址, timeoutInterval:10 设置为10s超时:请求时间超过10s会被认为连接不上,连接超时
[request setHTTPMethod:@"POST"];//POST请求
[request setHTTPBody:bodyData];//body 数据
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"];//请求头
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];//同步发送request,成功后会得到服务器返回的数据
//返回的数据 根据系统的不同会返回不同编码的数据,比如windows 为GBK,Ubuntu 为UTF8.。。
//注意转换编码格式
转自:http://blog.csdn.net/like7xiaoben/article/details/8735390
相关文章推荐
- Arduino - 看门狗定时器(WDT:Watch Dog Timer)
- UILabel的自适应长度
- 【转】Android自动化测试(UiAutomator)简要介绍
- vimgrep 查找光标下单词并打开quickfix
- UGUI - 使用动画来改变透明度解决
- UINavigationBar属性设置
- Why do I keep getting mixed tabs and spaces in a Visual Studio C# code window?[vs power tools issue transfered]
- 编译ceed(cegui editor)
- OpenCV【1】---OpenCV2.4.11 Build for QT 5.5.0 of Win7
- Android Studio 报错"gradle xxx is required. current version is xxx"
- 深入理解Message, MessageQueue, Handler和Looper
- 搭建自家的wiki平台:win2008 破解安装confluence-5.1.4 和 汉化。
- iOS笔记UI--生成二维码Demo(不是扫码,是根据字符串生成二维码)
- UE4中多种颜色轮廓线的后期处理
- Handler Looper MessageQueue 的关系
- UIVie和CALayer属性对应关系
- iOS UIBezierPath类 介绍
- javaWEB中百度富文本编辑器UEditor1.4.3的使用随笔
- 【LEETCODE】303-Range Sum Query - Immutable
- iOS 修改UITextField的placeholder属性的字体颜色(修改UITextField占位符字体的颜色)