IOS高级编程(网络编程一)

来源:互联网 发布:剑灵卡刀软件 编辑:程序博客网 时间:2024/05/27 02:27

一.HTTP协议的概念

1.HTTP协议,Hyper Text Transfer Protocol(超⽂文本传输协议)是用于从万维⺴⽹网服务器传送超⽂文本到本地浏览器的传输协议,HTTP是一个应⽤用层协议,由请求和响应构成,是一个标准的客户端服务器 模型。HTTP是一个无状态的协议

二.HTTP协议的特点

1.⽀支持客户/服务器模式(C/S模式)(client/server)

2.简单快速

3.灵活,HTTP允许任意类型的对象进⾏行传输,正在传输的对象类型由Content- type加以标记

HTTP0.9和HTTP1.0版本使⽤用⾮非持续链接,HTTP1.1版本使⽤用持续链接 

4.无状态,HTTP协议是⼀一种⽆无状态协议


注:了解C/S模式

Client和Server常常分别处在相距很远的两台计算机上,Client程序的 任务是将⽤用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显⽰示给用户;Server程序的任务是接收客户程序提出的服务 请求,进⾏行相应的处理,再将结果返回给客户程序


三.HTTP协议的最常使用请求方法:GET  POST  PUT  DELETE

使用GET的方式请求:

(1)图片,视频,音频等等对媒体数据
(2)获取文本信息.(联系人)
(3)根据客户端的需求,向服务器添加数据获取客户端要的信息

以下是实现的代码(GET) 同步
//1.发起网络请求

NSString * imageURLString = @"http://b.zol-img.com.cn/desk/bizhi/image/4/1024x768/1389837941961.jpg";


//2.将网址字符串封装为NSURL对象

NSURL * imageURL = [NSURL URLWithString:imageURLString];


//3.网络请求设置

NSMutableURLRequest * request = [NSMutableURLRequest requestWithURL:imageURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];


//设置网络请求为GET(不设置网络请求默认为GET)

[request setHTTPMethod:@"GET"];


//连接服务器(同步)

NSError * error = nil;

NSData * data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];


//打印出响应的类型

NSLog(@"type = %@",[response MIMEType]);


//上述方法执行结束后,获取到请求数据,数据存储在NSDATA,数据的信息存储在reponse

if (data != nil)

{//把从网路服务器请求回来的图像,显示在UIImageView

        UIImage * readImage = [UIImage imageWithData:data];

       _image.image = readImage;

}



注:如果请求的是文件,

使用

NSString * STRING = [[NSString alloc]initWithData:DATA encoding:NSUTF8StringEncoding];

替换

UIImage * readImage = [UIImage imageWithData:data];

_image.image = readImage;














0 0
原创粉丝点击