HTTP协议格式详解

HTTP协议格式:

HTTP请求格式:
1.首行:4.方法GET(获取)/POST(发送)/PUT/DELETE…
  • url
  • 版本号 HTTP/1.1 HTTP/2.0 HTTP/3.0

三个部分之间用空格分隔

2.协议头(header)

若干个键值对,每个键值对占一行,每个键和值之间使用 : 分隔

3.空行

表示header到这里就结束了

4.协议正文(body)

一般GET请求没有body,post请求才有


HTTP响应格式:
1.首行:
  • 版本号
  • 状态码
  • 状态码描述信息
2.协议头(header)

每个键值对占一行,每个键和值之间用 : 分隔

3.空行

header部分结束标记

4.协议正文(body)

响应中的正文格式可以有多种.html/css/JS/图片数据/json数据

常见问题:

1.常用的方法有哪些?

GET,POST,PUT,DELETE,HEAD,OPTION…

2.GET和POST的区别?

GET请求往往把自定制的数据放在query_string中

POST请求往往把自定制数据放在body中

  • 误区1:GET是获取数据,POST是发送数据;不严谨,在如今GET也能往服务器上放数据,POST也能冲服务器上获得数据
  • 误区2:GET对自定制数据的长度有限制,因为HTTP对URL的长度是有限制的;不准确,在如今URL的数据大小也能达到几十K,几百K,现在的浏览器与服务器对URL长度几乎没限制
3.常见的状态码
  • 200 OK 表示访问成功
  • 302 Found 表示重定向
  • 404 Not Found 没找到指定资源
  • 403 Forbidden 没有权限
  • 502 Bad Gateway 服务器出错
  • 504 Gateway Timeout 服务器响应超时

2xx访问成功,3xx重定向,4xx客户端出错,5xx服务器出错

4.常见的header有哪些?
  • Content-Type:描述了body的数据格式类型
  • Content-Length:描述了body的数据长度
  • Host:描述了访问的主机名(IP地址/域名)
  • User-Agent:声明用户的操作系统和浏览器的版本信息
  • Referer:当前页面是从哪个页面跳转来的
  • Cookie:字符串,浏览器的本地存储能力之一
    • Cookie中经常会包含一种叫做“身份标识”的信息session id
    • session:服务器端维护的一个数据结构,记录了用户的身份信息,session id 就是session对象的唯一身份标识,session id 保存在浏览器中,浏览器后续再访问服务器的时候,就会自动带着session id ,从而让服务器知道当前请求是哪个用户发来的
    • 服务器端使用一个HashTable之类的结构来维护若干个用户的身份信息,key就是session id ,value 就是完整的session对象
    • Cookie是按照Host这个header来划分的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值