http:
http的请求报文:http的版本号,http方法(get,post,HEAD....),url,请求头(被请求的文件类型),实体头
HTTP的响应报文:http版本号,状态码,响应头,实体头,内容
HTTP的作用:1):确认通讯双方的身份 2):建立安全通道,保证数据安全传输
get,post,head的区别?
答: 如果请求表单,新闻组,BBS,邮件组数和数据库字段"索引"就用post替换get,表示请求的是一个较大的数据。head只请求web页面的信息,不返回信息体,用于验证该web页面。get请求web页面的信息。
HTTP的状态码
下面是常见的HTTP状态码:
200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误
HTTP状态码分类
HTTP状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的作用。HTTP状态码共分为5种类型:
HTTP状态码分类
分类 分类描述
1** 信息,服务器收到请求,需要请求者继续执行操作
2** 成功,操作被成功接收并处理
3** 重定向,需要进一步的操作以完成请求
4** 客户端错误,请求包含语法错误或无法完成请求
5** 服务器错误,服务器在处理请求的过程中发生了错误
根据响应结果的类型,大致分为以下几类:
-
2.1 1XX(信息,服务器收到请求,需要请求者继续执行操作)
该类型状态码表示接收到请求并且继续处理。
-
100,客户端必须继续发出请求。
-
101,客户端要求服务器根据请求转换HTTP协议版本。
2.2 2XX(响应成功,操作被成功接收并处理)
该类型状态码表示动作被成功接收、理解和接受。
-
200,表明该请求被成功地完成,所请求的资源发送到客户端。
-
201,提示知道新文件的URL。
-
202,接受并处理,但处理未完成。
-
203,返回信息不确定或不完整。
-
204,收到请求,但返回信息为空。
-
205,服务器完成了请求,用户必须复位当前已经浏览过的文件。
-
206,服务器已经完成了部分用户的GET请求。
2.3 3XX(重定向类,需要进一步的操作以完成请求)
该类型状态码表示为了完成指定的动作,必须接受进一步处理。
-
300,请求的资源可在多处获得。
-
301,本网页被永久性转移到另一个URL。
-
302,请求的网页被重定向到新的地址。
-
303,建议用户访问其他URL或访问方式。
-
304,自从上次请求后,请求的网页未修改过。
-
305,请求的资源必须从服务器指定的地址获得。
-
306,前一版本HTTP中使用的代码,现已不再使用。
-
307,声明请求的资源临时性删除。
2.4 4XX(客户端错误类,请求包含语法错误或无法完成请求)
该类型状态码表示请求包含错误语法或不能正确执行。
-
400,客户端请求有语法错误。
-
401,请求未经授权。
-
402,保留有效ChargeTo头响应。
-
403,禁止访问,服务器收到请求,但拒绝提供服务。
-
404,可连接服务器,但服务器无法取得所请求的网页,请求资源不存在。
-
405,用户在Request-Line字段定义的方法不被允许。
-
406,根据用户发送的Accept,请求资源不可访问。
-
407,类似401,用户必须首先在代理服务器上取得授权。
-
408,客户端没有在用户指定的时间内完成请求。
-
409,对当前资源状态,请求不能完成。
-
410,服务器上不再有此资源。
-
411,服务器拒绝用户定义的Content-Length属性请求。
-
412,一个或多个请求头字段在当前请求中错误。
-
413,请求的资源大于服务器允许的大小。
-
414,请求的资源URL长于服务器允许的长度。
-
415,请求资源不支持请求项目格式。
-
416,请求中包含Range请求头字段,在当前请求资源范围内没有range指示值。
-
417,服务器不满足请求Expect头字段指定的期望值。
2.5 5XX(服务器错误类,服务器在处理请求的过程中发生了错误)
该类型状态码表示服务器或网关错误。
-
500,服务器错误。
-
501,服务器不支持请求的功能。
-
502,网关错误。
-
503,无法获得服务。
-
504,网关超时。
-
505,不支持的http版本。
3、响应头
是对响应的一种限定,包含很多属性。常用的属性有:
-
Location,实现请求重定向。
-
Server,服务器的基本信息。
-
Content-Encoding,服务器发送数据时使用的压缩格式。
-
Content-Language,发送的数据所用的语言。
-
Content-Type,所发送的数据的类型。
-
Content-Length,发送数据的大小。
-
Set-Cookie,把cookie发送到客户端。
-
Last-Modified,指示资源的最后修改日期和时间。
-