欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【博客357】谈谈http的那些事(四)

程序员文章站 2022-05-05 17:39:08
...

内容: 记录http协议

http1.1的请求方法:

方法名称	 含义	         解析
GET	     获取资源	     用来请求已被识别的URI资源

POST	传输实体内容	     向指定的资源提交要被处理的数据,或用于添加新的内容

PUT	    传输文件	         向服务器提交文件,在请求头中添加待提交文件,或更新文件对
                         资源进行整体覆盖,返回204状态码

PATCH	对资源进行部分修改	 是对PUT的补充

HEAD	获取报文首部	     向服务器请求URI资源的信息,确定资源的有效性

DELETE	删除文件	         与PUT方法相反,返回204状态码

OPTIONS	询问支持的方法	 返回请求URI资源所支持的方法

TRACE	追踪路径	         确认客户端到服务器之间发生的转发和代理操作,不常用

CONNECT	要用隧道协议通信	 使用SSL和TLS加密后通信

常见状态码:

100  Continue               继续,一般在发送post请求时,已发送了http、header之后
                            服务端将返回此信息,表示确认,之后发送具体参数信息

200  OK                     正常返回信息

201  Created                请求成功并且服务器创建了新的资源

301  Moved Permanently      请求的网页已永久移动到新位置。

400  Bad Request            服务器无法理解请求的格式,客户端不应当尝试再次使用相同
                            的内容发起请求。

404  Not Found              找不到如何与 URI 相匹配的资源。   

500  Internal Server Error  最常见的服务器端错误。

其它状态码:


* 2XX Success

200 OK 表示从客户端发来的请求在服务器端被正常处理了。

204 No Content 该状态码表示服务器接收的请求已成功处理,但在返回的响应报文中不含实体的
主体部分。比如,当从浏览器发出请求处理后,返回204响应,那么浏览器显示的页面不发生更新。

206 Partial Content 该状态码表示客户端进行了范围请求,而服务器成功执行了这部分的
GET请求。

 
* 3XX Redirection

301 Moved Permanently 永久性重定向。该状态码表示请求的资源已经被分配了新的URI,
以后应使用资源现在所指的URI。 像下方给出的请求URI,当指定的资源路径的最后忘记添加
斜杠"/",就会产生301状态码

302 Found 临时性重定向。该状态码表示请求的资源已被分配了新的URI,希望用户(本次)
能使用新的URI访问。

303 See Other 该状态码表示由于请求对应的资源存在另外一个URI,应使用GET方法定向
获取请求的资源。 303状态码和302状态码有着相同的功能,但303状态码明确表明客户端应
当采用GET方法获取资源。 当301302303响应状态码返回时,几乎所有的浏览器都会把
POST改成GET,并删除请求报文的主体,之后请求会自动再次发送。 301302标准是禁止将
POST方法改变成GET方法的,但实际上使用时大家都会这么做。

304 Not Modified 该状态码表示客户端发送附带条件的请求时,服务器端允许请求访问资源,
但未满足条件的情况。304状态码返回时,不包含任何响应的主体部分。304虽然被划分在3XX类
别中,但是和重定向没有关系。

307 Temporary Redirect 临时重定向。该状态码与302 Found有着相同的含义。307会遵照
浏览器标准,不会从POST变成GET。


* 4XX Client Error

400 Bad Request 该状态码表示请求报文中存在语法错误。当错误发生时,需要修改请求的内容
后再次放松请求。

401 Unauthorized 该状态码表示发送的请求需要有通过HTTP认证的认证信息,另外若之前已进
行过1此请求,则表示用户认证失败。

403 Forbidden 该状态码表明对请求资源的访问被服务器拒绝了。

404 Not Found 该状态码表明服务器上无法找到请求的资源。除此之外,也可以在服务器端拒绝
请求且不想说明理由时使用。

* 5XX Server Error

500 Internal Server Error 该状态码表明服务器端在执行请求时发生了错误。

503 Service Unavailable 该状态码表明服务器暂时处于超负载或正在进行停机维护,
现在无法处理请求