1.概念:HTTP是一种一种基于TCP的协议,用来获取web页面。
2.特点:
1)无状态:每个HTTP请求都是独立的,服务器不会保留以前的请求或者会话的历史记录
2)双向传输
3)协商能力:HTTP协议允许客户端与服务器协商一些细节,比如数据使用的编码方式.
4)高速缓存
5)支持中介:HTTP允许在客户端和服务器之间加入代理服务器。转发客户端的请求。
3.HTTP发起请求的方式
客户端可以用GET,HEAD,PUT,POST,DELETE,LINK,UNLINK方式向服务器发起请求。
GET和POST区别:
1). get读取web页面,从服务器上获取数据,post在某个web页面添加信息,向服务器传送数据。
2). get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。
post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3). 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4). get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5). get安全性非常低,post安全性较高。但是执行效率却比Post方法好。
4.HTTP豹纹格式
HTTP报文可以看作是一个字符串,由开始行,首部行和实体主体组成。
1).开始行,报文的第一行,用于区分报文的类型是请求还是响应,请求报文的开始行称为"请求行",响应报文的开始行称为"状态行"。行结束用回车+换行表示
请求行包括以下三个内容
a)请求方式
b)URL
c)HTTP版本
响应报文的状态行包括:
a)HTTP版本
b)状态码
c)解释字符串
2)首部行,HTTP常用首部行如下:
Content-Length:数据大小,以字节计算 Content-Type:数据类型 Content-Encoding:数据使用的编码方式
Content-Language:数据使用的语言 Host:指定www服务器的名称 Connection:指定是否使用持久连接
Accept:指定接收那种数据,比如文本还是图形 Accept-Encoding:指定接收那种编码类型 Accept-Charest:指定接收数据包含的字符集
Accept-Language:指定接收数据对应的语言,If-Modified-Since指定接收数据,Max-Forwards:指定可以经过几个代理服务器处理
Location:重定向
2.特点:
1)无状态:每个HTTP请求都是独立的,服务器不会保留以前的请求或者会话的历史记录
2)双向传输
3)协商能力:HTTP协议允许客户端与服务器协商一些细节,比如数据使用的编码方式.
4)高速缓存
5)支持中介:HTTP允许在客户端和服务器之间加入代理服务器。转发客户端的请求。
3.HTTP发起请求的方式
客户端可以用GET,HEAD,PUT,POST,DELETE,LINK,UNLINK方式向服务器发起请求。
GET和POST区别:
1). get读取web页面,从服务器上获取数据,post在某个web页面添加信息,向服务器传送数据。
2). get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。
post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3). 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4). get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5). get安全性非常低,post安全性较高。但是执行效率却比Post方法好。
4.HTTP豹纹格式
HTTP报文可以看作是一个字符串,由开始行,首部行和实体主体组成。
1).开始行,报文的第一行,用于区分报文的类型是请求还是响应,请求报文的开始行称为"请求行",响应报文的开始行称为"状态行"。行结束用回车+换行表示
请求行包括以下三个内容
a)请求方式
b)URL
c)HTTP版本
响应报文的状态行包括:
a)HTTP版本
b)状态码
c)解释字符串
2)首部行,HTTP常用首部行如下:
Content-Length:数据大小,以字节计算 Content-Type:数据类型 Content-Encoding:数据使用的编码方式
Content-Language:数据使用的语言 Host:指定www服务器的名称 Connection:指定是否使用持久连接
Accept:指定接收那种数据,比如文本还是图形 Accept-Encoding:指定接收那种编码类型 Accept-Charest:指定接收数据包含的字符集
Accept-Language:指定接收数据对应的语言,If-Modified-Since指定接收数据,Max-Forwards:指定可以经过几个代理服务器处理
Location:重定向