• 前端之http协议


    http://www.cnblogs.com/yuanchenqi/articles/6000358.html

    http:是规定了浏览器和万维网服务器之间相互通信的规则,它有两个格式,客户端发送给服务端的格式叫’请求协议’,服务器发送给客户端的格式叫”响应协议”.

    B(浏览器)------s(服务端)叫bs模式

    请求协议的格式如下

    请求首行:请求方式  请求路径  协议和版本 ,如GET  index.html  HTTP/1.1

    请求头信息:请求头名称:请求头内容,即为key:value格式, 如下

           Host:localhost  :请求的主机名即服务端的ip加端口

    accept:请求能接收到的文档类型

    text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

    accept-encoding: 请求能接收到的压缩格式

    gzip, deflate

    accept-language:请求能接收到的语言

    zh-CN,zh;q=0.8

    cache-control:

    max-age=0

    cookie:是一个容器,在第一次访问某个地址时,从浏览器中把cookie容器发过去,在容器中装入在该地址中的操作,退出该地址中时,把装有数据的cookie又回到浏览器中,保存到本地,因为不是第一次访问这个地址,所以会在请求中把上一次服务器响应中发送过来的cookie在请求中一并发送过去

    user-key=38cf2b16-8de6-4ae6-aad8-02169eed9e0a; cn=0; __jda=122270672.169444840.1490190764.1492507637.1494830664.6; __jdb=122270672.1.169444840|6.1494830664; __jdc=122270672; __jdv=122270672|direct|-|none|-|1494830663508; o2-webp=true; __jdu=169444840

    upgrade-insecure-requests:

    1

    Referer:http://127.0.0.1   用来记录链接地址来源地址,主要跟盗链有关,还做统计工作

    user-agent:把浏览器用户的系统版本和浏览器版本信息发送到服务端

    Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.108 Safari/537.36 2345Explorer/8.5.1.15355

    空行:   用来与请求体分隔开

    请求体 :浏览器向服务端发送的数据内容,即请求数据,get没有请求体,post有请求体

    注:请求方式有两种,分别是GET 和POST.get请求时,会在url后面加请求数据,如

    http://www.baidu.com:80/index.html?a=1&b=2    其中a=1和b=2是请求数据,它们通过?隔开,数据与数据通过&隔开

    2.1get请求

    http默认的请求方式就是get,它没有请求体,请求数据有一定的范围,get请求数据会暴露在浏览器的地址栏中

    GET请求常用的操作:

    1).在浏览器的地址栏中直接给出url,那么久一定是get请求

    2).点击页面上的超链接也一定是get请求

    3)提交表单时,表单默认使用get请求,但是我们一般设置成POST

    2.2POST请求

    1)数据不会出现在地址栏中,2)数据的大小没有上限,3)有请求体,4)请求体中如果存在中文,会使用url编码

    响应协议

    响应格式如下:

    响应首行:协议和版本   状态码  即其对应解释 如HTTP/1.1   200  OK  , HTTP/1.1是协议和版本,200是状态码,OK是对应状态码的解释

    响应头信息:   一般是默认的,

    空行 :用来与响应体分隔开

    响应体: 发给浏览器的数据内容

    3 状态码

    响应首行对浏览器很重要,它说明了响应的真正含义

    注last-Modified,它记录了index.html的最后修改时间,用它来判断浏览器中的数据是否要刷新.

  • 相关阅读:
    敏捷思维-架构设计中的方法学(12)Refactoring
    敏捷思维-架构设计中的方法学(11)精化和合并
    敏捷思维-架构设计中的方法学(8)架构愿景
    敏捷思维-架构设计中的方法学(10)分层 (下)
    Agile 敏捷建模思想 作者:林星
    敏捷思维-架构设计中的方法学(9)分层 (上)
    敏捷思维-架构设计中的方法学(13)稳定化
    敏捷思维-架构设计中的方法学(15)进一步阅读
    hdu 1829+hdu 1856(并查集)
    hdu 1050+hdu 1789+hdu 3177(贪心)
  • 原文地址:https://www.cnblogs.com/IQ-Python/p/6875215.html
Copyright © 2020-2023  润新知