推荐图书《图解HTTP》
常见的HTTP状态码解析,状态码的职责是当客户端向服务器端发送请求时,描述返回的请求结果。借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了错误
2XX
200:表示从客户端发来的请求在服务器端被正常处理了
比如我们在打开某个网页的时候,可以正常加载出来,表示处理成功了
204:表示服务器接收的请求已处理成功,但在返回的响应报文中不含实体的主体部分。一般在只需要从客户端往服务器发送信息,而对客户端不需要发送新信息内容的情况下使用
206:表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求,响应报文中包含由Content-Range指定范围的实体内容
3XX
301:永久性重定向,表示请求的资源该状态码表示请求的资已被分配了新的URI,以后应使用资源现在所指的URI
比如在浏览器中输入jianshu.com,也可以跳转到简书的首页,但是会进行重定向到https://www.jianshu.com
302:临时性重定向,表示请求的资源已被分配了新的URI,希望用户能使用新的URI访问,与301的区别就是该分配只是临时的,之后可能仍然会发生改变
比如在浏览器中输入note.youdao.com,如果网页版的云笔记是登录的状态,会被临时重定向到https://note.youdao.com/web
304:该状态码表示客户端发送附带条件的请求时,服务器端允许请求访问资源,但未满足条件的情况。304状态码返回时,不包含任何响应的主体部分。304虽然被划分在3XX类别中,但是和重定向没有关系。
4XX
表示客户端是发生问题的主要原因
400:bad request,请求报文中存在语法错误
401:unauthorized,表示发送的请求需要有http的认证信息
403:表明对请求资源的访问被服务器拒绝了。服务器端没有必要给出拒绝的详细理由,但如果想作说明的话,可以在实体的主体部分对原因进行描述,这样就能让用户看到了。.未获得文件系统的访问授权,访问权限出现某些问题(从未授权的发送源IP地址试图访问)等列举的情况都可能是发生403的原因。
404:not found,服务器上无法找到请求资源
比如输入一个不存在的网址,就会显示404
5XX
500:internal server error,服务器在执行请求时发生了错误
比如一般服务器返回错误的状态码(开发过程中自定义的状态码)了,都会返回500
503:services unavailable,服务器暂时处于超负载或正在停机维护,现在无法处理请求
网友评论