oc中相关http协议知识

http协议

http协议是可靠的数据传输协议,不会被破坏或产生混乱

浏览网页时,浏览器会向服务器发送一条http请求,服务器会去寻找所期望的对象,若成功,则将对象,对象类型,对象长度等信息发送给客户端。

URI(uniform resource identifier,统一资源标识符)(位移标识并定位信息资源)

http解析对象的形式:

|URL:统一资源定位符(几乎所有的uri都是url)

|标准格式:方案+服务器的因特网地址+web服务器上得具体资源

如:http://www.joes-hardware.com/specials/saw-blade.gif

方案名与大小写无关

常见方案格式:

http:超文本传输协议方案,默认端口号为80.

http://<host>:<port>/<path>?<query>#<frag>

https:与http类似,唯一的区别是https使用了ssl(提供端到端的加密机制),默认端口号为443,格式同http

mailto:指向email地址。

基本格式:mailto:<RFC-822-addr-spec>

如:mailto:[email protected]

ftp:可从ftp服务器中上传或下载文件。

基本格式:ftp://<user>:<password>@<host>:<port>/<path>;<params>

rtsp,rtspu:解析音/视频媒体资源的标识符。

基本格式:rtsp(u表示用udp协议获取资源)://<user>:<password>@<host>:<post>/<path>

file:表示一台指定主机上可直接访问的文件。若省略主机名,默认为正在使用url的本地主机。

基本格式:file://<host>/<path>

news:用来访问一些特定的文章或新闻组,它自身包含的信息不足以对资源进行定位,与位置无关。

基本格式:new:<newgroup>或news:<neew-article-id>

telnet:用于访问交互式业务(应用程序资源)

telnet://<user>:<password>@<host>:<port>/

|URN:统一资源名(与当前的资源所在地无关)

http状态码:用于告知客户端请求是否成功,或是否需要采取其他动作。

200:OK,文档正确返回

302:(Redirect)重定向,到其他地方取获取资源

401:(Not Found)未找到,需要输入用户和密码

404:(Not Found)没找到

100 - 199 信息提示

200 - 299 成功

300 - 399 重定向

400 - 499 客户端错误

500 - 599 服务的错误

tcp/ip连接:ip地址+端口号

网关(gateway)是一种特殊的服务器,作为其他服务器的中间实体使用。

通常用于将http流量转换成其他的协议。

隧道(tunnel):

通常用来在一条或多条http连接上转发非http数据,转发时不会窥探数据。

agent代理:

代表用户发起http请求的客户端程序。如:web浏览器

时间: 2024-08-01 21:43:44

oc中相关http协议知识的相关文章

oc中分类 扩展 协议的使用及区别

一.分类 1.适用范围 当你已经封装好了一个类(也可能是系统类.第三方库),不想在改动这个类了,可是随着程序功能的增加需要在类中增加一个方法,这时我们不必修改主类,只需要给你原来的类增加一个分类. 将一个大型的类拆分成不同的分类,在不同分类中实现类别声明的方法,这样可以将一个类的实现写到多个.m文件中,方便管理和协同开发. 分类中的方法可以只声明,不实现,所以在协议不支持可选方法的时候(协议现在已经支持可选方法),通常把分类作为非正式协议使用. 2.语法格式 文件中的语法 @interface

OC中协议的概念以及用法

OC中协议的概念以及用法,协议也是OC中的一个重点,Foundation框架以及我们后面在写代码都会用到. OC中的协议就是相当于Java中的接口(抽象类),只不过OC中的名字更形象点,因为我们在学习Java中的接口时候,看可以知道其实接口就相当于一种契约(协议),给他的实现类打上标记了,当然这个活在Java5.0之后,被注解替代了,因为注解就是为了此功能诞生的.协议就是定义了一组方法,然后让其他类去实现 下面来看代码:WithProtocol.h[objc]  view plaincopy 

OC学习篇之---协议的概念和用法

这一篇文章我们在来看一下OC中协议的概念以及用法,协议也是OC中的一个重点,Foundation框架以及我们后面在写代码都会用到. OC中的协议就是相当于Java中的接口(抽象类),只不过OC中的名字更形象点,因为我们在学习Java中的接口时候,看可以知道其实接口就相当于一种契约(协议),给他的实现类打上标记了,当然这个活在Java5.0之后,被注解替代了,因为注解就是为了此功能诞生的. 协议就是定义了一组方法,然后让其他类去实现 下面来看代码: WithProtocol.h [objc] vi

OC中保存自定义类型对象的持久化方法

OC中如果要将自定义类型的对象保存到文件中,必须进行以下三个条件: 想要把存放自定义类型的数组进行 持久化(就是将内存中的临时数据以文件<数据库等>的形式写到磁盘上)必须满足: 1. 自定义对象必须要序列化(将数据有序的存放) 2. 需要使用归档来进行持久化 3. 如果要加载持久化文件需要进行反序列化(就是将有序存放的数据读取并变成自定义对象) 第一要将自定义类型序列化以及第三步并将文件反序列化必须实现OC中的  <NSCoding>协议. 以Student类为例 @interfa

(转载)OC学习篇之---协议的概念和用法

在前一篇文章中我们介绍了OC中类的延展,这一篇文章我们在来看一下OC中协议的概念以及用法,协议也是OC中的一个重点,Foundation框架以及我们后面在写代码都会用到. OC中的协议就是相当于Java中的接口(抽象类),只不过OC中的名字更形象点,因为我们在学习Java中的接口时候,看可以知道其实接口就相当于一种契约(协议),给他的实现类打上标记了,当然这个活在Java5.0之后,被注解替代了,因为注解就是为了此功能诞生的. 协议就是定义了一组方法,然后让其他类去实现. 下面来看代码: Wit

OC中类别、扩展、协议与委托

类别(category)--通过使用类别,我们可以动态地为现有的类添加新方法,而且可以将类定义模块化地分不到多个相关文件中.通常只在类别中定义方法. 类别,接口部分的定义,通常该文件命名为已有"类+类别名.h" @interface 已有类 (类别名) //.......方法实现 @end 例如,考虑为NSNumber增加一个类别,则接口部分代码如下 <p style="margin-top: 0px; margin-bottom: 0px; font-family:

OC中SEL,类别,继承,协议的使用

1.SEL SEL是selector的缩写,selector在OC中作用是定义一个方法变量,通过该方法变量来调用方法.我们在后面的UI中会经常用selector来调用事件方法.下面我将举两个例子来说明SEL的使用. 直接通过方法名来调用,我们先新建一个Student类,并在其中定义一个名叫Test的对象方法.并定义一个输出语句: -(void)test { NSLog(@"这是SEL的测试方法"); } 我们在Main方法中通过SEL调用就会输出以上结果,如下: SEL s = @se

iOS开发OC基础:OC中的协议

1.协议是一种为有源代码的类扩充方法的方式. 2.协议只是一系列方法的生命,就相当于一张任务清单,规定了要做的事情,但是具有的实施(也就是实现),是由服从该协议的类来实现.所以协议只有.h文件,并且不可以定义变量 3.协议的定义是以@protocol开头, + 协议的名字 <>(表示服从的协议)服从的协议写在<>之内,多个协议之间通过逗号来进行分隔,父协议中的内容就相当于子协议也具有这些内容,以@end结束. 下面的附件是协议的一个小例子,可以加深大家对协议的理解,看完之后一定要多

OC中通过协议实现多继承

在OC中并没有多继承的概念, 但是我们可以通过协议来实现多继承 实例如下: #import <Foundation/Foundation.h> @protocol Add <NSObject> - (int)addA:(int)a b:(int)b; @end #import <Foundation/Foundation.h> @protocol Sub <NSObject> - (int)subA:(int)a b:(int)b; @end #import