HTTP 简介 (js)

HTTP 意为超文本传输,是一种获取网络资源的协议。议是Web上数据交换的基础。

1.客户端

客户端通常是一个浏览器,当输入URL时,浏览器发起第一个请求以获取HTML文档,服务端收到请求后,生成相应的HTML文档,返回给浏览器,浏览器解析返回的HTML文档,并根据文档中的资源信息发送其他的请求获取这些资源,例如css文件、js脚本、图片等,浏览器根据这些资源绘制页面。

HTTP协议是无状态的

可以使用cookie以及session创建有状态的会话,也可以在请求头中添加token 来分辨请求来着哪个链接。

2.HTTP流

HTTP报文有两种类型------请求与回应

一个客户端与服务器的数据交换流程

  1. 打开一个TCP连接(或者重用之前的一个):TCP连接用来发送一条或多条请求,当然也用来接收回应消息。客户端可能重用一个已经存在的连接,或者也可能重开几个新的与服务端的TCP连接
  2. 发送一个HTTP报文:HTTP报文(在HTTP/2之前)是语义可读的。在HTTP/2中,这些简单的消息被封装在帧中,这使报文不可能被直接读出来,但是规则仍旧是相同的
  3. 读取服务端返回的报文。
  4. 关闭连接或者为以后的请求重用连接。
相关推荐
隐擎fox8 小时前
高性能网络爬虫架构设计:基于 Python 的长连接复用与分布式会话池调度实践
分布式·python·网络协议·tcp/ip·高并发·网络爬虫、
IT摆渡者9 小时前
1panel 配置申请手动解析网站SSL证书
服务器·网络协议·ssl
易岳群9 小时前
物联网 MQTT 方案:服务端如何通过 MQTT 生命周期维护客户端设备状态
物联网·网络协议
2501_9378609414 小时前
网络核心|OSI七层、TCP/IP五层模型,封装和分用详解
网络·网络协议·tcp/ip
ControlRookie14 小时前
第23篇_源码加更 05|HTTP Server、连接实例和诊断数据
http·codesys·plc通信·开源源码
宵时待雨15 小时前
linux笔记归纳18:传输层协议TCP
linux·网络·笔记·网络协议·tcp/ip
captain37616 小时前
▲网络原理(1)-UDP
网络·网络协议·tcp/ip
开开心心就好17 小时前
清理此电脑网盘图标工具,开源免费好用
网络·网络协议·tcp/ip·智能手机·电脑·scala·erlang
企业数字化笔记19 小时前
AI写的网站一直自动跳转怎么办?301、302和HTTPS重定向排查
网络协议·http·https
IT摆渡者19 小时前
1panel 针对HTTP自动续签SSL网站证书
网络协议·ssl·openresty