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. 关闭连接或者为以后的请求重用连接。
相关推荐
lunzi_082613 小时前
《图解HTTP》--第5章-与HTTP协作的Web服务器
服务器·前端·http
http阿拉丁神猫15 小时前
TCP、IPv4和IPv6解读
运维·网络协议·tcp/ip
会编程的土豆15 小时前
网络基础核心笔记(HTTP、TCP、前后端通信)
网络·笔记·http
独自破碎E15 小时前
GoCloud - 基于 WebSocket 的实时聊天应用
网络·websocket·网络协议
酉鬼女又兒15 小时前
零基础入门计算机网络物理层:核心任务、四大关键特性与全类型传输媒体(双绞线/同轴电缆/光纤/微波/红外线/可见光)完整详解
网络·网络协议·计算机网络·职场和发展·求职招聘
爱吃羊的老虎15 小时前
【JAVA】python转java:Spring Boot 如何处理 Web 请求
java·前端·spring boot·http
拾光Ծ18 小时前
【Linux网络】计算机网络入门:网络产生与协议
linux·网络·网络协议·tcp/ip·计算机网络
专业机床数据采集1 天前
C# 精雕数控 数据采集 Demo|实时读取精雕机床坐标、主轴、负载、加工工时全量参数
网络·网络协议·tcp/ip·mes·精雕数控数据采集
发光小北1 天前
双通道 CAN (FD) 转以太网如何应用?
网络协议
汤愈韬1 天前
四种 NAT 类型详解|透彻理解 NAT 穿越原理(全锥 / 受限锥 / 端口受限锥 / 对称 NAT)
网络·网络协议·安全·网络安全·security