HTTP协议及网络请求与响应

文章目录

HTTP 协议

协议:就是两个计算机之间为了能够流畅的进行沟通而设置的一个君子协定。常见的协议有 TCP/IP, SOAP 协议,HTTP 协议,SMTP 协议等等......

HTTP 协议,Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。直白点儿,就是浏览器和服务器之间的数据交互遵守的就是 HTTP 协议。

HTTP 协议把一条消息分为三大块内容。无论是请求还是响应都是三块内容

请求

  1. 请求行 -> 请求方式 (get/post) 请求 url 地址 协议
  2. 请求头 -> 放一些服务器要使用的附加信息
  3. 空白, 用于分割
  4. 请求体 -> 一般放一些请求参数

响应

  1. 状态行: 协议, 状态码 (200, 302, 404, 500)
  2. 响应头: 放一些客户端要使用的一些附加信息
  3. 空白, 用于分割
  4. 响应体: 服务区返回的真正客户端要用的内容(HTML, json)等

请求头中最常见的一些重要内容 (爬虫需要):

  1. User‑Agent:请求载体的身份标识 (用啥发送的请求)
  2. Referer: 防盗链 (这次请求是从哪个页面来的?反爬会用到)
  3. cookie: 本地字符串数据信息 (用户登录信息,反爬的 token)

响应头中一些重要的内容:

  1. cookie: 本地字符串数据信息 (用户登录信息,反爬的 token)
  2. 其他字符串 (一般是 token 字样,防止各种攻击和反爬)

请求方式:

GET: 显示提交

POST: 隐示提交

  • User‑Agent:告诉服务器,我是什么浏览器 / 设备,爬虫不加 UA 很容易被识别拦截。
  • Referer:记录你是从哪个页面跳转过来,部分网站用来做防盗链校验。
  • Cookie:保存在本地,携带登录状态、校验令牌;服务器响应头会下发 cookie,后续请求头带上它。
  • GET:参数拼在 URL 地址栏上,看得见;
  • POST:参数放在请求体里面,URL 看不到参数。
相关推荐
lazy H1 小时前
【计算机网络】第 13 篇:NAT 和端口映射是什么?为什么本地服务外网访问不了?
java·网络·网络协议·学习·计算机网络·408
Linux运维技术栈1 小时前
WAF部署在防火墙后面,获取不到真实IP怎么办?
服务器·网络·tcp/ip·安全·防火墙·waf
低慢小uav2 小时前
(已解决)Zynq芯片lwip协议栈,使用tcp作为服务器Service,接收大量数据时,长度接收正常,接收对数据校验,校验和异常分析
网络协议·tcp/ip·fpga开发
垆边人似月.2 小时前
RDMA项目踩坑(一):为什么最后一块数据必须使用实际长度?
网络·c/c++·rdma·高性能io·tcp与rdma
YH_Analytics2 小时前
2026 高压 E-House 市场深度分析报告市场格局
网络·数据库
zl_dfq2 小时前
Windows 下 UDP 套接字编程指南
网络·windows·udp
日常筹谋记2 小时前
数据中心逆变设备运维|通讯对接、动环接入与多系统联动方案科普
运维·网络
上海研博数据3 小时前
HY-K 太阳能控制器协议|水利物联太阳能供电系统接入指南
网络
zerwave3 小时前
从慢订阅者到发布者:LiteBus 如何用 Unix Socket 背压保护可靠 Topic
网络·机器人·unix
piaoyiren4 小时前
Python FTP 服务端项目详细功能文档
网络·数据库·python