最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • Http系列-02-http请求和响应

    正文概述 掘金(徐四)   2020-11-27   656

    Http系列-02-http请求和响应

    1.http请求:

    由下图可以看到,http请求由请求行,消息报头,请求正文三部分构成。

    Http系列-02-http请求和响应

    1-1.HTTP请求状态行:

    请求行由请求Method, URL 字段和HTTP Version三部分构成, 总的来说请求行就是定义了本次请求的请求方式, 请求的地址, 以及所遵循的HTTP协议版本例如:

    GET /example.html HTTP/1.1 (CRLF)
    

    HTTP协议的方法有:

    • ?GET: 请求获取Request-URI所标识的资源
    • ?POST: 在Request-URI所标识的资源后增加新的数据
    • HEAD: 请求获取由Request-URI所标识的资源的响应消息报头
    • ?PUT: 请求服务器存储或修改一个资源,并用Request-URI作为其标识
    • ?DELETE: 请求服务器删除Request-URI所标识的资源
    • TRACE: 请求服务器回送收到的请求信息,主要用于测试或诊断
    • CONNECT: 保留将来使用
    • OPTIONS: 请求查询服务器的性能,或者查询与资源相关的选项和需求

    1-2.HTTP请求头:

    消息报头由一系列的键值对组成,允许客户端向服务器端发送一些附加信息或者客户端自身的信息,主要包括:

    Header 解释 示例
    Accept 指定客户端能够接收的内容类型 Accept: text/plain, text/html Accept-Charset 浏览器可以接受的字符编码集 Accept-Charset: iso-8859-5,utf-8 Accept-Encoding 指定浏览器可以支持的web服务器返回内容压缩编码类型 Accept-Encoding: compress, gzip Accept-Language 浏览器可接受的语言 Accept-Language: en,zh Accept-Ranges 可以请求网页实体的一个或者多个子范围字段 Accept-Ranges: bytes Authorization HTTP授权的授权证书类型 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== Cache-Control 指定请求和响应遵循的缓存机制 Cache-Control: no-cache Connection 表示是否需要持久连接(HTTP 1.1默认进行持久连接) Connection: close Cookie HTTP请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器 Cookie: $Version=1; Skin=new; Content-Length 请求的内容长度 Content-Length: 348 Content-Type 请求的与实体对应的MIME信息 Content-Type: application/x-www-form-urlencoded Date 请求发送的日期和时间 Date: Tue, 15 Nov 2020 08:12:31 GMT Expect 请求的特定的服务器行为 Expect: 100-continue From 发出请求的用户的Email From: user@email.com Host 指定请求的服务器的域名和端口号 Host: www.zcmhi.com If-Match 只有请求内容与实体相匹配才有效 If-Match: “737060cd8c284d8af7ad3082f209582d” If-Modified-Since 如果请求的部分在指定时间之后被修改则请求成功,未被修改则返回304代码 If-Modified-Since: Sat, 29 Oct 2020 19:43:31 GMT If-None-Match 如果内容未改变返回304代码,参数为服务器先前发送的Etag,与服务器回应的Etag比较判断是否改变 If-None-Match: “737060cd8c284d8af7ad3082f209582d” If-Range 如果实体未改变,服务器发送客户端丢失的部分,否则发送整个实体。参数也为Etag If-Range: “737060cd8c284d8af7ad3082f209582d” If-Unmodified-Since 只在实体在指定时间之后未被修改才请求成功 If-Unmodified-Since: Sat, 29 Oct 2020 19:43:31 GMT Max-Forwards 限制信息通过代理和网关传送的时间 Max-Forwards: 10 Pragma 用来包含实现特定的指令 Pragma: no-cache Proxy-Authorization 连接到代理的授权证书 Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== Range 只请求实体的一部分,指定范围 Range: bytes=500-999 Referer 先前网页的地址,当前请求网页紧随其后, 即来路 Referer: www.zcmhi.com/archives/71… TE 客户端愿意接受的传输编码,并通知服务器接受接受尾加头信息 TE: trailers,deflate;q=0.5 Upgrade 向服务器指定某种传输协议以便服务器进行转换(如果支持) Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11 User-Agent User-Agent的内容包含发出请求的用户信息 User-Agent: Mozilla/5.0 (Linux; X11) Via 通知中间网关或代理服务器地址,通信协议 Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1) Warning 关于消息实体的警告信息 Warn: 199 Miscellaneous warning

    1-3.HTTP请求正文:

    只有在发送POST请求时才会有请求正文,GET方法并没有请求正文

    2.HTTP响应:

    与HTTP请求类似,先上一张图:

    Http系列-02-http请求和响应

    HTTP响应也由三部分组成,包括状态行,消息报头,响应正文。

    2-1.HTTP响应状态行

    状态行也由三部分组成,包括HTTP协议的版本,状态码,以及对状态码的文本描述。例如:

    HTTP/1.1 200 OK (CRLF)
    

    2-2.HTTP响应状态码

    状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:

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

    ?常见状态代码、状态描述、说明:

    • 200OK - 客户端请求成功
    • 400Bad Request - 客户端请求有语法错误,不能被服务器所理解
    • 401Unauthorized - 请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
    • 403Forbidden - 服务器收到请求,但是拒绝提供服务
    • 404Not Found - 请求资源不存在,eg:输入了错误的URL
    • 500Internal Server Error - 服务器发生不可预期的错误
    • 503Server Unavailable - 服务器当前不能处理客户端的请求,一段时间后,可能恢复正常

    起源地下载网 » Http系列-02-http请求和响应

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元