c#_http_编程第九章 HTTP编程
HTTP概述
HTTP(Hypertext Transfer Protocol,超文本传输协议)是用于从。
其中定义了以下重要的协议:
HTTP标题
HTTP方法
HTTP响应信息
URL
HTTP流程
URL、URI 和 URN
URI,Uniform Resource Identifier
统一资源标识符,用字符串惟一标识信息资源
URL,Uniform Resource Locator
统一资源定位符,通过“通讯协议+网络地址”字符串惟一标识信息位置和资源访问途径
URN,Uniform Resource Name
统一资源命名符,用于惟一标识全球范围内由专门机构负责的稳定的信息资源
HTTP请求消息
举例:
GET /books/ HTTP/
Accept: */*
Accept-Language: en-us
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/
User-Agent: Mozilla/
Accept-Encoding: gzip, deflate
请求消息的结构:
一个请求行、若干消息头、以及实体内容,其中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。
请求行
一个空行
多个消息头
HTTP响应消息
举例:
HTTP/ 200 OK
Server: Microsoft-IIS/
Date: Thu, 13 Jul 2000 05:46:53 GMT
Content-Length: 2291
Content-Type: text/html
Cache-control: private
<HTML>
<BODY>
……
响应消息的结构:
一个状态行、若干消息头、以及实体内容,其中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。
状态行
一个空行
多个消息头
实体内容
HTTP标题
当客户端通过浏览器向服务器端发送请求时,HTTP将请求转化为协议可以识别的HTTP标题信息传送至Web服务器处理。例如:
GET :80/ HTTP/
Accept:image/gif,image/jpeg,image/pjpeg,*/*
Referer:/
Accept-Language:
User-Agent:Mozilla/ (Windows NT ;MSIE )
Host”
此HTTP标题包含了以下重要的信息:
代表客户端向服务器端发送HTTP请求的方法,可以分为以下几种。
GET(通过请求URI得到资源)。
POST(用于添加新的内容)。
://:80/
代表客户端请求的资源,以URI或者URL的形式表示。
代表使用HTTP的版本。
除了上述信息之外,HTTP标题还包含以下信息:
(1)Accept表示客户端可以处理的媒体类型,如下列格式。这些媒体的类型可以按照优先级进行排序。若为*/*,则代表客户端可以接受所有类型的媒体形式。
Application/word
Application/excel
Application/pdf
Application/zip
Application/xml
image/jpeg
image/gif
text/css
text/html
video/mpeg
HTTP标题
(2)Accept-Charset:定义客户端可以处理的字符集,按照优先级进行排序。在一个以逗号为分隔的列表中,可以定义多种类型和使用通配符。例如:Accept-Charset: iso-8859-1,*,utf-8。
(3)Accept-Encoding:定义客户端可以理解的编码机制。例如:UTF7、UTF8、Unicode等。
(4)Accept-Language:定义客户端可以接受的自然语言列表。例如:Accept-Language: en,。
(5)Connection:用于表明是否保存socket连接作为开放的通用标头。例如:Connection: close或Connection: keep-alive。
(6)Content-Base:用于定义
c# http 编程 来自淘豆网www.taodocs.com转载请标明出处.