HTTP 的方法和状态码

方法 表示这次 HTTP 请求,要进行一个什么动作。

这些说明是 HTTP 协议设计者的 "美好期许",程序员真正用的时候,不一定会遵守。GET 方法用的最多,"天下的方法有一石,其中 GET 占了八斗,POST 占了一斗,其他方法共分一斗"。

一、GET 方法

对于 GET 请求来说,通常情况下,是没有 body 的。GET 是否可以有body呢?++理论上++ 来说是可以的,但是非常非常少见。++HTTP协议就是在TCP的基础上,构造出特定格式的字符串,写到TCP socket里。++ (body放的是程序员自定义的数据)GET 是从服务器 "拿一个数据",到底拿哪个数据?有啥要求?上述信息可以通过 url中的路径url中的query string 传输给对方。

二、POST 方法

有两个场景特别容易出现 POST,分别是登录和上传文件

1. 登录 gitee

登录过程:(1) 发起 POST 请求,告知服务器你的用户名密码,服务器验证是否正确 (2) 如果正确就跳转到主页:

POST 请求一般是有正文的,完全也可以没有。

2. 上传头像

其他网站的登录和上传文件,大概率也是 POST (用GET也能实现)注:POST 还有很多其他的场景。

经典面试题:GET 和 POST 的区别

GET 和 POST 其实没有本质区别,能用 GET 的地方,也能换成 POST;能用 POST 的地方,也能换成 GET。但是在使用习惯上,还是有一定区别的。

  1. GET 通常用来表示 "获取数据" 语义,POST 表示 "提交数据" 语义。
  2. GET 通常把给服务器传递的数据放到 query string 中,POST 则通常放到 body 中。

三、状态码

状态码位于响应的首行中,这里体现的是服务器的反馈(成功or失败)

(1) 2xx 视为成功

200 OK 请求成功

(2)4xx 是客户端错误

404 Not Found 访问的资源服务器上不存在。

下面随意写一个URL:

这样的错误属于是客户端造成的,客服端构造了URL,URL包含路径,构造的内容有问题,所以服务器找不到。

403 Forbidden 拒绝访问

访问的页面无权限。例如访问别人的私有仓库:

也属于是用户操作有误,客户端错误。

405 Method Not Allowed

服务器不支持这个方法

(3)5xx 表示服务器错误

500 Internal Server Error

出现这个问题,说明服务器挂了

504 Gateway Timeout

Gateway指的是服务器那边的网关,当服务器非常繁忙的时候,就可能会导致出现超时的情况

(4)3xx 都是重定向

301 永久重定向(浏览器可以做缓存)

302 临时重定向

访问一个url1,自动跳转到url2

相关推荐
andxe11 小时前
安科士 AndXe 技术博客:400G QSFP112 SR4 光模块|AI 算力与超算短距互联最优方案
网络·人工智能·光模块·光通信
shiyi.十一12 小时前
第2章:应用层 — 知识要点与架构
网络·计算机网络·架构
DFT计算杂谈12 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
水境传感 李兆栋13 小时前
GNSS 位移监测站 :毫米级感知,筑牢安全监测防线
网络
中微极客14 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能
猿的天空18 小时前
机器人双手迎来全栈训练系统:灵初智能EgoSteer让灵巧手无所不能
网络·人工智能·计算机·ai·程序员·机器人·编程
Xzaveir_77718 小时前
OPPO、vivo、荣耀号码认证:多终端拨测矩阵与异常复现
大数据·网络·科技·矩阵·产品经理·ai-native
wuqingshun31415918 小时前
从网络角度来看,用户从输入网址到网页显示,期间发生了什么?
网络
牛马工作号19 小时前
Zigbee 专业详解:从协议到排障
网络·物联网·安全
牛马工作号19 小时前
Wi‑Fi 完全指南:从 802.11 协议到 Wi‑Fi 7、AC+AP 与 Mesh 工程组网
网络·网络协议·智能路由器