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. 关闭连接或者为以后的请求重用连接。
相关推荐
wdfk_prog8 小时前
Wi-Fi Direct 源码分析(11):P2P-GROUP-STARTED 之后——Group Interface、IP 配置与真实数据通路
运维·服务器·网络协议·tcp/ip·asp.net·p2p·wifi-direct
wechatbot8888 小时前
企业微信HTTP协议接口完整接入教程|全量消息收发 API 实战
网络协议·http·微信·企业微信·ai编程
网络小江8 小时前
上网第三十七课:HTTPS——地址栏那把小锁,到底保护了什么
网络协议
车载中间件通信8 小时前
[TC8测试]TCP_CALL_ABORT_03_03
网络·网络协议·tcp/ip·tc8
web打印社区9 小时前
Lodop 提示未安装或请升级:Chrome 里先分清该装哪套
开发语言·前端·javascript·chrome·websocket·http
pt10439 小时前
CML网络仿真入门-1:Cisco Modeling Labs概述
运维·网络协议
网络小江10 小时前
上网第三十六课:HTTP——浏览器背后的协议
网络协议
傲世仙尊10 小时前
UDP底层与守护进程化-报头结构体skbuff指针移动与自成会话
驱动开发·网络协议·udp
吴声子夜歌20 小时前
Nginx应用与运维——Nginx HTTP模块详解(数据处理功能模块)
运维·nginx·http
XiaoMaqqqq20 小时前
知名的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip