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. 关闭连接或者为以后的请求重用连接。
相关推荐
微硬创新4 小时前
老旧产线改造:耐达讯自动化16路4‑20mA转PROFINET的工程实践
人工智能·网络协议·自动化·信息与通信
80s7777 小时前
独享住宅IP、长效代理ip是什么?有哪些作用?
网络·网络协议·tcp/ip
IPdodo_7 小时前
静态 IP、住宅 IP 和固定出口有什么区别?开发场景选型指南
服务器·网络·网络协议·tcp/ip·代理ip
_ZHOURUI_H_7 小时前
Unity TCP底层极限拆解:粘包、半包、CRC、序列号、双缓冲到底怎么一起工作的?
网络·网络协议·tcp/ip·游戏·unity·游戏引擎·游戏开发
pcplayer12 小时前
Delphi WebService 使用 HTTP Header 管理 Session
http·webservice·soap·web server·http header
微硬创新13 小时前
大点数模拟量采集落地:耐达讯自动化32路0-20mA适配PROFINET总线实践解析
运维·人工智能·网络协议·自动化·信息与通信
FfHUCisI13 小时前
Golang HTTP 路由设计与请求处理
开发语言·http·golang
小新讲网安14 小时前
HTTP请求走私攻击实战:CL.TE与TE.CL绕过前端服务器全解析
服务器·前端·网络·web安全·http·架构·漏洞
zhengqiqiqinqin14 小时前
Ubuntu16.04 升级ssl到3.5.7、升级ssh到9.8p1
网络协议·ssh·ssl
wear工程师1 天前
接口超时别只调大 timeout:Java HTTP 客户端其实有 3 段等待
java·http