一、http协议

一、http协议

1、什么是协议?

  1. 通信的双方的一种约束

2、什么是http协议?(超文本传输协议)

  1. 它是一种互联网请求和响应的协议。请求和响应要成对出现,有请求一定要有响应。用来规定浏览器和服务器 之间需要遵守的规则,它规范浏览器和服务器之间的数据传递.

3、Http协议的特点:

1)基于请求和响应的模型

2)必须先有请求,后有响应

3)请求和响应必须成对出现

4)默认的端口号是80

5)是无状态的协议

3.1、两个时代

  • http1.0:

    • HTTP/1.0:客户端可以与Web服务器连接后,只能获得一个web资源,断开连接

  • http2.0:

    • HTTP/1.1:客户端可以与Web服务器连接后,可以获得多个Web资源

4、Http请求

  • 客户端---发请求(Request)----服务器

百度:

Request URL: https://www.baidu.com/
Request Method: GET
Status Code: 200 OK
Remote Address: 110.242.68.3:443
请求 URL: http://www.baidu.com/
请求方法: GET
状态代码: 200 OK
远程地址: 110.242.68.3:80
Accept: text/html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
​
1、请求行
  • 请求行中的请求方式:GET

  • 请求方式:Get,Post,

    • get:请求能够携带参数比较少,大小限制,会在浏览器的URL地址栏显示数据,不安全,但是高效

    • Post:请求能够携带参数无限制,大小无限制,会在浏览器的URL地址栏不会显示数据,安全,但是不高效

2、请求头
Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持那种编码格式 GBK UTF-8 ....
Accept-Language: 告诉浏览器,它的语言环境
Connection: 告诉浏览器,请求完成是断开还是连接
HOST:主机

 

5、Http响应

  • 服务器---响应---客户端

Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持那种编码格式 GBK UTF-8 ....
Accept-Language: 告诉浏览器,它的语言环境
Connection: 告诉浏览器,请求完成是断开还是连接
HOST:主机

 

百度:

Connection: keep-alive  连接:保持活着
Content-Encoding: gzip  编码
Content-Type: text/html; charset=utf-8 类型
1、响应体
Accept: 告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持那种编码格式 GBK UTF-8 ....
Accept-Language: 告诉浏览器,它的语言环境
Connection: 告诉浏览器,请求完成是断开还是连接
HOST:主机
Refresh:告诉客户端,多久刷新一次;
Location:让网页重新定位

 

2、响应状态码

200:请求响应成功 200

3XX:请求重定义

  • 重定义:你重新到我给你新位置去;

4XX:找不到资源 404

  • 资源不存在

5XX:服务器代码错误 500 -----502:网关错误

常见面试题:

当你的浏览器中地址栏输入并回车的一瞬间到页面能够展示回来,经历了什么?

  • 作为客户端,浏览器接收到地址之后,首先会到windows系统文件hosts中查找是否有需要劫持的ip地址,若没有则需要询问DNS域名解析服务器该域名对应的ip地址。(DNS缓存) 浏览器缓存,系统缓存,路由器缓存,IPS服务器缓存,根域名服务器缓存,顶级域名服务器缓存,主域名服务器缓存

posted @ 2022-11-18 16:03  菜鸡前来  阅读(58)  评论(0编辑  收藏  举报