HTTP请求详解

HTTP概念:

HTTP全称是HyperText  Transfer  Protocal,即超文本传输协议,是应用层协议。当你上网浏览网页的时候,浏览器和web服务器之间就会通过HTTP在Internet上进行数据的发送和接收。HTTP是一个基于请求/响应模式的、无状态的协议。即我们通常所说的Request/Response。

上面说过HTTP是一个基于请求/响应模式的、无状态的协议。下面我们就分请求和响应来分别解读。

HTTP请求包报文由四部分组成:请求行,请求头,空行、请求体。

请求行:一般包含有请求的URL,请求方式(GET/POST),协议名称和版本号。

请求头:

Host:请求地址

User-AgentL:浏览器类型及操作做系统先关信息

Accept:指定客户端接受哪些类型的信息。

Accept-Charset请求报头域用于指定客户端接受的字符集

Accept-Language:指定客户端接收语言格式

Accept-Encoding:指定客户端接收编码格式

Authorization:请求报头域的请求,要求服务器对其进行验证。

Content-Length:请求长度

Content-Type:请求类型

Referer:当前请求引用于哪里

Connection:浏览器跟服务器连接状态

Cookie:浏览器保存的cookie信息

Date:请求时间

请求空行: 标志着请求头结束,请求正文(请求体)的开始

请求体只有使用POST方式访问时参数才会存在请求体。

HTTP响应包报文由三部分组成:响应行,响应头、响应体。

响应行:协议、版本、数字形式的状态代码,及相应的状态描述组成(示例:HTTP/1.1 200 OK)

状态代码由 3 位数字组成, 表示请求是否被理解或被满足,状态描述给出了关于状态码的简短的文字描述。状态码的第一个数字定义了响应类别,后面两位数字没有具体分类。第一个数字有 5 种取值,如下所示。

  • 1xx:指示信息——表示请求已经接受,继续处理
  • 2xx:成功——表示请求已经被成功接收、理解、接受。
  • 3xx:重定向——要完成请求必须进行更进一步的操作
  • 4xx:客户端错误——请求有语法错误或请求无法实现
  • 5xx:服务器端错误——服务器未能实现合法的请求。

常见的状态码、描述、说明

200   OK    //客户端请求成功

304        // 返回上次请求资源未作改动,验证浏览器的缓存机制

400   Bad Request  //请求参数错误

401   Unauthorized     //客户端无权访问,要去输入用户名\密码之类的授权信息

403   Forbidden      //禁止访问(读写权限等影响)

404   Not Found     //请求的资源不存在

405                          //请求方式不正确

500   Internal Server Error    //服务内部错误

502:网关错误

503   Server Unavailable  //服务器当前不能处理客户端的请求,一段时间后可能恢复正常

Content-Language: zh-cn               --表示服务器支持的语言

Content-Encoding:表示服务器发送给浏览器的数据类型

Content-Length:表示服务器发送给浏览器的数据大小

Content-Type:表示服务器发送给浏览器的数据类型及内容编码

Connection:浏览器跟服务器连接状态

Date:响应时间

响应体:服务端返回给客户端的数据

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值