http状态码的解释

  对于web程序员来说,http肯定是一块比较重要的地方,本章说下http的状态码。ps:详细了解http部分,建议读《http权威指南》,这是圣经了对于http,不过如果你是新手,对这一块不是很熟悉的话,我的建议是先读《图解http》,再去读《权威指南》。我这块就是参考图解http写的。

  http状态码

  一.类别

    

  类别 说明
 1xxx informational(信息性状态码) 请求正在请求
 2xxx success(成功) 请求正常处理完毕
 3xxx redirection(重定向) 需要附加操作来完成请求
 4xxx client error(客户端错误状态码) 服务器无法处理请求
 5xxx server error(服务器错误状态码) 服务器处理请求出错

  类别就是上面几种,下面具体说说各个状态码

  二.状态码详解

    目前状态码的总数很多,我这里说说常用的几种

    200 ok,这个就不说了,表示请求完成,但是对于各个http方法还是有点区别,比如get是请求实体会返回,但是用head方法的话,响应是只返回首部的

    204 no content ,这个表示请求也成功了,但是不含实体主体部分,也不允许返回实体部分,一般用来客户端向服务端发送信息,而对客户端不需要发送新的信息

    206 partial content,这个比较特殊,是属于对资源的一部分请求,这个用来比如图片之类的咯上次我请求了一部分突然断掉了,这次我只要后半部分之类的,不过这个需要加上content-range来说明

    301,302,303,307,这几个其实都是表示重定向,但是是有区别的,一般的用的比较多的就是301,302,301:表示永久重定向,302表示临时重定向,

303和307感觉上是302的变种,用的比较少,我遇到的次数也不是很多,简单说下区别,303表示希望用get方式获取资源(不知道是不是所有人都遵循这个规则),307会根据浏览器要求不会从post变为get,对了301和302明确表示不希望从post变为get访问

    还有个304需要说明下,304跟重定向无关,表示允许访问服务器,但未满足的情况下,不返回任何实体

    400 bad request ,一般返回表示服务器无法理解这个请求,应该是出错了,需要客户端修改内容后发送

    401 unauthorized,表示没有权限,需要认证,一般这个我写rest API时候有时候会用这种方法

    403 forbidden,表示被服务器拒绝了,一般不会给你原因,但是若是想会在返回的实体里面写的

    404 not found,这个就不说了

    500 internal server error,这个也不说了

    503 service unavailable,表示服务器暂时不可用,停机维护之类的,不过你要是作为后端知道啥时候恢复的话,在返回的实体里面加上RetryAfter更好了

  对于状态码和状况不一致的情况,也是经常遇到的,这个就需要自己去判别了。。最后安利一个工具,如果你只想看statusCode的话,谷歌下有个扩展叫Http Status。。

转载于:https://www.cnblogs.com/leihuang/p/8917387.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Http状态码指的是Hypertext Transfer Protocol (HTTP)协议的通信状态代码,用于指示浏览器和服务器之间的通信是否成功。它们用于指示服务器如何处理用户的请求,以及浏览器应如何显示给用户。常见的Http状态码包括200 OK(请求成功)、404 Not Found(未找到)、403 Forbidden(禁止访问)、500 Internal Server Error(服务器内部错误)等等。 ### 回答2: HTTP状态码是指在进行HTTP协议通信过程中,服务器向客户端返回的一个三位数的数字码。这个数字码用来表示服务器对请求的处理结果,从而告知客户端当前请求的状态。 HTTP状态码分为5个类别,分别以不同的数字开头: 1xx:信息类状态码,表示接收的请求已被成功接收,需要继续处理。 2xx:成功类状态码,表示请求已被成功接收、理解和处理。 3xx:重定向类状态码,服务器需要进一步操作以完成请求。 4xx:客户端错误类状态码,表示客户端发送的请求有误或不可被服务器所理解。 5xx:服务器错误类状态码,表示服务器在处理请求时发生了错误。 常见的HTTP状态码有: 200 OK:表示请求成功,服务器成功处理并返回了请求的资源。 301 Moved Permanently:表示请求的资源被永久重定向到其他地址。 400 Bad Request:表示客户端发送的请求有错误,服务器无法理解。 404 Not Found:表示请求的资源不存在。 500 Internal Server Error:表示服务器在处理请求时发生了未知的错误。 HTTP状态码是在进行网页浏览、文件下载、网站交互等一系列HTTP通信中非常重要的一个组成部分。通过状态码,客户端能够了解到请求的结果,根据不同的状态码采取不同的处理方式,从而达到更好的用户体验和系统交互效果。 ### 回答3: HTTP状态码是用来表示客户端请求与服务器响应之间的状态的标准化代码。每个HTTP响应的状态码都由一个三位数字组成,每个数字有特定的含义。以下是常见的HTTP状态码及其解释: 200 OK:表示请求成功,服务器成功处理了请求,并返回了请求的资源。 301 Moved Permanently:请求的资源已经被永久移动到新的位置,客户端需要更新请求的URL。 400 Bad Request:请求错误,服务器无法理解客户端发送的请求。 401 Unauthorized:请求要求身份验证,客户端没有提供有效的身份验证凭据。 403 Forbidden:服务器拒绝该请求,客户端没有访问权限。 404 Not Found:请求的资源不存在,服务器无法找到请求的URL。 500 Internal Server Error:服务器遇到了内部错误,无法完成请求。 除了上述状态码外,还有许多其他状态码,如302 Found(临时移动)、503 Service Unavailable(服务不可用),每个状态码都有其特定的含义,用于指示请求的结果和错误的原因,以便客户端和服务器能够进行相应的处理和调试。服务器返回的状态码对于开发者来说是非常重要的,可以帮助我们了解请求的结果和问题所在,对于调试和错误处理非常有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值