HTTP是一种无状态协议,其中会话由上层应用程序管理。但是HTTP协议提供了关于HTTP请求的状态码。每个HTTP请求都将由来自远程站点或服务器的HTTP状态代码响应。在本教程中,我们将检查HTTP状态码的类别、类型、含义、标准定义等。
超文本传输协议
在开始讨论HTTP状态码之前,我们将讨论HTTP协议。HTTP word作为客户机-服务器体系结构,其中请求部分被命名为客户机,响应部分将被命名为服务器。HTTP是一种无状态协议,这意味着每个请求都是独立的。与其他请求无关的请求。
HTTP状态代码
如前所述,每个HTTP请求都将用一个HTTP状态码进行响应,该状态码将以正式的方式提供有关请求的信息。HTTP状态码是标准的,提供关于请求的一般响应。当我们向www.poftut.com 我们将得到一个HTTP200状态码,这意味着请求已完成,响应返回如下。
![图片[1]-HTTP状态代码-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2019/11/poftut_img_5ddce5de24416.png)
在下面的示例中,我们向 www.poftut.com/aaa
由于没有这样的资源,HTTP响应代码是404,这意味着 Not Found
.
![图片[2]-HTTP状态代码-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2019/11/poftut_img_5ddce6255847f.png)
HTTP状态码与浏览器的兼容性
HTTP是一种古老的标准化协议,所有现代和流行的浏览器都支持它。此外,所有的HTTP状态码都支持这些浏览器,如谷歌浏览器,Mozilla Firefox,微软边缘,微软IE浏览器,Opera…
HTTP状态代码类别/类型
嗯,有很多HTTP状态码。因此,HTTP状态码根据其含义进行分类。此外,状态代码根据其类别进行编号。HTTP状态代码从 100
继续前进 599
. 下面我们将简要解释这些HTTP状态类别。
相关文章: Visual Studio Express安装
信息回应(100-199)
正如类别名称所示,它主要用于提供有关正在进行的过程的一些信息。服务器使用此类别切换协议,即请求的当前状态。
成功回答(200-299)
Successful Responses
是最常用的HTTP状态代码,在服务器端成功操作后返回到客户端。 200 OK
状态码是最流行的。
重定向(300-399)
Redirect
类别响应主要用于重定向给定的请求。重定向可能有不同的原因,这些原因与HTTP状态代码一起提供,如 305 Use proxy
, 307 Temporary Redirect
等。
客户端错误(400-499)
Client Errors
用于提供有关请求错误的信息。它可以是错误的请求、禁止的、不允许的方法等。
服务器错误(500-599)
Server Errors
与服务器端请求执行出错的请求处理相关。服务器端错误可以是内部错误、网关错误、网关超时、存储不足等。
HTTP状态代码
让我们开始根据HTTP状态代码的类别详细检查它们。
信息回应(100-199)
-
100 Continue
用于提供到目前为止一切正常,并且操作仍在服务器上继续。 -
101 Switching Protocol
用作客户端“升级”请求头的响应。这将更改客户端和服务器之间的协议版本。 -
102 Processing
在WebDAV中使用,它只响应客户端WebDAV操作正在继续而服务器上没有问题。 -
102 Early Hints
用于在服务器响应之前提供要预加载的客户端链接。链接在HTTP响应头部分中提供。
相关文章: HTTP状态503错误代码以及如何修复?
成功回答(200-299)
-
200 OK
是最著名的HTTP状态码,它只是从服务器返回到客户端,请求被毫无问题地处理。它可以与不同的HTTP方法一起使用,比如GET、HEAD、PUT、POST和TRACE。 -
201 Created
在服务器端创建某个对象以通知客户端时返回。 -
202 Accepted
是对成功请求的中间响应,以接受正在进行的进程。 -
203 Non-Authoritative Information
-
204 No Content
用于无任何HTTP内容的成功响应。 -
205 Reset Content
将告诉用户代理重置发送此请求的文档。 -
206 Partial Content
是用于Range
只显示接收到部分内容的HTTP头。 -
207 Multi-Status
是与WebDAV相关的代码,用于提供存在多个状态代码。 -
208 Already Reported
是WebDAV代码。 -
226 IM Used
重定向(300-399)
-
300 Multiple Choice
表示请求有多个可能的响应。 -
301 Moved Permanently
通知客户端提供的资源或URL将永久移动到给定的URL。 -
302 Found
表示找到临时更改的URI。 -
303 See Other
通知客户端使用另一个URI和GET请求。 -
304 Not Modified
用于缓存目的,以通知请求的URI未更改并且可以缓存。 -
305 Use Proxy
通知客户,要访问此文档,应使用代理。 -
305 Unused
是长时间未使用的HTTP状态代码。 -
307 Temporary Redirect
用于临时重定向到另一个URI。
相关文章: 什么是网页?
客户端错误(400-499)
-
400 Bad Request
是另一个流行的响应,它简单地表示客户端请求无效。 -
401 Unauthorized
响应只是表示客户端没有授权使用此文档或资源。客户端需要使用HTTP摘要进行授权。 -
402 Payment Required
保留以供将来使用,以便用于支付给定资源的费用。 -
403 Forbidden
用于表示禁止访问给定资源或文档。 -
404 Not Found
是另一个常用的响应代码,如果找不到URI或URL,则使用该代码。 -
405 Method Not Allowed
如果给定的方法不能用于给定的资源或文档,则返回。 -
406 Not Acceptable
-
407 Proxy Authentication
在需要代理身份验证才能访问源时使用。
服务器错误(500-599)
-
500 Internal Server Error
在执行请求时出现错误时,对客户端进行响应。 -
502 Not Implemented
在服务器端未实现客户端请求时返回。 -
502 Bad Gateway
作为网关或代理时返回,其中目标服务器不提供任何有意义的响应。 -
503 Server Unavailable
在目标服务是临时过载或维护时返回。 -
504 Gateway Timeout
将被返回,其中请求所用的时间将长于请求将被取消并超时的预期时间。 -
505 HTTP Version Not Supported
与服务器不支持客户端提供的HTTP版本的HTTP版本相关。