ios网络解析
来源:互联网 发布:远程桌面端口号是多少 编辑:程序博客网 时间:2024/05/20 05:10
ios网络解析
HTTP是用来实现客户端与服务器之间进行信息通信的协议
URL决定于谁通信
http://www.imooc.com/course-list?name=ios&cid=231412
协议 主机名 路径(接口名称) 查询条件
http:// hostname:port/ absoltuePath ?key=value&key2=value2
ios网络请求一般使用http中的GET和POST,通常需要使用到几个类:NSURL、NSURLRequst、NSURLConnection
get:从服务端获取一段内容,通常不包含请求体
post:使用客服端提供的数据更新到服务器实体
NSURL:请求地址指定客户端访问哪里的数据资源
NSURLRequst:封装一个请求,保存发给服务器的全部数据,包括一个NSURL对象,请求方法、请求头、请求体....,标识客户端发起的网络请求内容
NSMutableURLRequest:NSURLRequest的子类
NSMutableURLRequest:NSURLRequest的子类
NSURLConnection:负责发送请求,建立客户端和服务器的连接。发送NSURLRequest的数据给服务器,并收集来自服务器的响应数据,表示与客户端建立的网络连接
NSURLResponse:表示结果
NSURLConnection的使用1)发送请求的三个步骤:
此时运行,在控制台打印出的信息:
NSURLConnection的使用
1.简单说明
使用NSURLConnection发送请求的步骤很简单
(1)创建一个NSURL对象,设置请求路径(设置请求路径)
(2)传入NSURL创建一个NSURLRequest对象,设置请求头和请求体(创建请求对象)
(3)使用NSURLConnection发送NSURLRequest(发送请求)
1.设置请求路径
2.创建请求对象
3.发送请求
3.1发送同步请求(一直在等待服务器返回数据,这行代码会卡住,如果服务器,没有返回数据,那么在主线程UI会卡住不能继续执行操作)有返回值
3.2发送异步请求:没有返回值
说明:任何NSURLRequest默认都是get请求。
(2)发送同步请求代码示例:
发起一个网络请求
@interface AppDelegate ()<NSURLConnectionDataDelegate,NSURLConnectionDelegate> @end @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. //指定访问的网络地址 NSURL *url = [NSURL URLWithString:@"https://www.imooc.com"]; //表示客户端发起的网络请求内容 NSURLRequest *requst = [NSURLRequest requestWithURL:url]; NSURLConnection *connection =[[NSURLConnection alloc]initWithRequest:requst delegate:self]; //启动网络请求 [connection start]; return YES; } -(void)connection:(NSURLConnection *)connection didReceiveResponse:(nonnull NSURLResponse *)response { NSLog(@"%@",response); //此处接收到到是服务器返回到数据 } }
App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.(大概的意思就是应用程序安全运输了明文HTTP协议(http:/ /)资源负载是不安全的。暂时的异常可以通过您的应用程序的Info.plist文件配置。)
这是因为ios9新增了ATS特性,强制使用https安全协议。解决此问题需要在info.plist中新增如下操作:
当status code打印200 表示网络请求成功
0 0
- IOS 网络解析
- iOS 网络解析
- IOS网络解析
- iOS 网络解析
- iOS SBJson网络解析
- ios网络解析
- iOS----解析网络json
- IOS 网络请求与解析
- 浅议iOS网络数据解析
- iOS开发网络 -- JSON解析
- IOS 请求网络数据,解析
- iOS网络笔记--JSON解析
- iOS UI 14 网络解析
- IOS 网络解析(XML,JSON)
- iOS网络交互数据格式解析之json
- IOS学习笔记,网络请求,json解析
- iOS 网络数据之XML解析
- iOS 网络数据请求和Json 解析
- 减少前端代码耦合的几个方法
- 从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
- nginx linux环境安装
- jdk 1.6新特性说明(转载)
- 深度学习和机器学习的相关资料
- ios网络解析
- Python错误异常
- google.protobuf.message.DecodeError: Tag had invalid wire type.
- db2记录
- Sonatype Nexus 手动更新索引
- JAVA中的异常处理机制及异常分类
- jQuery.cookie.js取cookie值为undefined问题
- vuforia6.2 在unity中图片识别教程
- 前端编程的几点建议及问题