http(下)

http的工作流程:

客户端---服务端通信过程

请求----响应的模型

建立连接:tcp/ip协议与服务器建立连接(三次握手),客户端向服务器的80端口发送连接请求

发送请求:一旦连接建立之后,客户端就像服务端发送http请求。http请求:由一个请求行和多个头部字段组成

请求方式:get post

服务端处理请求:根据请求的方式和内容进行处理。服务端会读取请求头的字段,解析参数,处理数据等等

服务端返回响应:形成一个http响应,响应由一个响应行,包含多个字段。响应内容包含重要的内容状态码,用于表示服务端对于请求的处理结果

面试题:

http的状态码

1xx:信息提示100-101 无实际作用

2xx:成功,表示请求处理结果成功 200

3xx:重定向,304表示请求的是缓存

4xx:客户端错误,403 404,请求的页面不存在或者没有权限访问

403:请求的页面禁止访问

404:服务器无法请求的页面

5xx:服务器错误

  1. 内部服务器错误

500:检查防火墙,检查进程也就是服务状态,检查端口,检查配置文件,端口号被占用

502:无效网关

503:请求的服务器不可用,可能下线了

504:网关请求超时

生产中常见的状态码:

200 ok:请求成功

301:永久重定向

302:临时重定向

304:访问的是本地缓存

403:Forbidden,禁止客户访问该页面

404:NOT FOUND,服务器无法找到被请求的页面

500:inetnal server error,内部服务器错误

502:BAD geteway,网关失效(服务端的网关失效)

503:server Unavailable,服务器不可用(网站维护)

504:GATEWAY timeout,网关请求超时(服务端处于维护或者路由器故障)

传输数据:一旦服务器生成了http响应,会通过之前建立的连接将响应返回给客户端

响应当中包含了请求的资源(网页内容)以及其他的需要传输的数据(一般是自定义)

关闭连接:响应发送完成,服务端就会进入连接关闭,http1.1 time_wait。双方还在建立连接,只是双方之间不在有数据传输。一旦有新的请求,连接可以继续使用。160秒 会话保持或者长连接

http1.1会一次性获取页面的全部资源,然后发起四次挥手。只是不再传输数据,连接并没有断开

客户端解析和现实响应:

客户端收到http响应之后,解析响应内容,包括页面解析,显示图片,播放视频

主要靠的是浏览器

客户端也可以继续发送请求,或者打开新的连接,请求其他资源

http的请求方式:

get的方式:

get向服务器放送请求的数据,依照http协议来进行get就是请求

请求行:

请求体:

Accept:客户端可以接受的数据类型

Accept-Encoding:客户端可以接受的编码格式,以及数据是否需要压缩

Accept-Language:客户端可以接受的语言类型

Cache-Control:数据再本地缓存的时间

Connection:连接的处理方式,一般都是会话保存

host:表示请求的ip和端口号,也可以理解为请求的主机名

User-Agent:客户端请求使用的浏览器信息

响应头:

响应体:

post:向服务端发送数据,按照http协议进行,服务器添加数据,post的请求方式会修改服务器上的数据

get和post的区别:

get的请求可以换粗

get的请求还可以保存在浏览器的cookie中

get的请求长度有限制

get就是获取数据

post的请求不能被缓存,也不会保存在浏览器的cookie中

post请求没有长度限制

请求的字符串不会显示,比较安全

小工具:

telnet:可以测试服务器的指定断开是否正常

yum -y install telnet

命令:telnet 192.168.233.20 80

nc:

命令:

test1:nc -l 8888

test2:nc 192.168.233.10 8888

相关推荐
2301_76444133几秒前
python构建的基于WiFi重连流量分析的隐蔽摄像头检测
网络协议·网络安全·信息与通信
AhaPuPu5 分钟前
LLM Agent Attack- Indirect Prompt Injection
网络·人工智能·prompt
wadesir6 分钟前
提升系统效率的关键(Linux文件系统性能优化入门教程)
linux·网络·性能优化
爱凤的小光15 分钟前
Ubuntu网络基础
网络·ubuntu·php
L.Ru19 分钟前
在MobaXterm中使用debian以及常见的命令
运维·网络·debian·信息与通信
Brixy21 分钟前
Linux网络配置
linux·运维·网络
遇到困难睡大觉哈哈27 分钟前
Harmony os HTTP 网络访问(Network Kit 版)
网络·http·iphone·harmonyos·鸿蒙
勇气要爆发31 分钟前
问:TCP/UDP的区别及应用场景
网络协议·tcp/ip·udp
5***V93339 分钟前
SQL 注入漏洞原理以及修复方法
网络·数据库·sql
Wokoo739 分钟前
数据链路层:以太网、MAC 地址及 ARP 协议详解
服务器·网络·后端·网络协议·信号处理