HTTP相关

(1)HTTP是什么?

  HTTP全称是HyperText Transfer Protocal,超文本传输协议。是客户端与服务端进行通信的标准。

(2)请求与响应?

  请求是客户端向服务器发出的,响应是服务器像客户端发出的,都遵循一定的格式。

  请求的格式:请求行+请求头+请求体(可选)

Get请求:

组成:请求行+请求头
应用场景:
Get场景

请求行:

一般包含请求方式、请求的uri资源、HTTP协议版本等等

请求头:

Host:主机(带端口号)
User-Agent:客户端的信息(比如操作系统的版本、浏览器的版本等等)
Accept:客户端/浏览器能够接受什么样格式的返回数据(例如text/html,说明浏览器能够接受文本类型为html格式的数据)
Accept-Language:客户端能够接受的语言类型
Accept-Encoding:客户端能够接受的压缩算法
Connection:连接类型(keep-alive表示长连接,即客户端在发送一个请求之后,并获得完响应之后不会关闭这个TCP连接,可以实现连接服用,下一个请求可以继续使用这个TCP连接来发请求。keep-alive具体描述
Referer:从哪个地方(URL)发来的请求
Cookie:客户端携带的cookie数据
Get请求例子

Post请求

组成:请求行+请求头+请求体
应用场景:表单提交,method设置为Post

请求行:

包含请求类型、请求的URl路径、HTTP协议的版本等等

请求头:

与Get请求不同的几处如下:
Content-Type:提交的数据格式Content-Type详细描述
Content-Length:数据内容的长度(单位是字节)
Origin:该请求从哪个主机(带端口号)发送来的

请求体:

最后一部分为请求体,携带真正的数据
在这里插入图片描述

HTTP响应

  响应格式:响应行+响应头+响应体

响应行:

包含HTTP协议版本、状态码、以及状态码描述等等

响应头:

Server:服务器描述信息
Accept-Ranges:是否支持范围请求 Accept-Ranges详细描述
ETag:对资源的唯一标识
Last-Modified:资源上次被修改的时间(方便做缓存)
Content-Type:资源类型(与请求中的Content-Type类似)
Content-Length:响应内容的长度(单位字节)
Date:服务器返回响应的时间

响应体

响应的真正的数据在响应体中
在这里插入图片描述

(3)常用状态码?

200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
302 - (两次请求,地址栏中的URL地址会改变)资源暂时被转移到其他URL,响应中会有Location字段,告诉客户端请求的资源的新URL
304 - 请求的资源没有被更改,从缓存中拿就行
404 - 请求的资源(网页等)不存在,例如客户端将资源的URL地址写错
500 - 内部服务器错误

(4)MIME类型?

在这里插入图片描述
在这里插入图片描述

  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值