阿布云

你所需要的,不仅仅是一个好用的代理。

HTTP状态码到底干嘛的?

阿布云 发表于

关注云层天咨有助于升职加薪噢!

比某知道更专业靠谱的知识分享平台

HTTP状态码到底干嘛的?

HTTP状态码(HTTPStatusCode)是用以表示网站服务器HTTP响应状态的3位数字代码,其中第1位代表响应的类别,后续2位则为编号。

每个HTTP响应都会带上HTTP的状态码,以大致告诉客户端一些标志性的情况说明,当然要看到这个东西,必须是要抓包的,不然就算你有透视功能也是没法在表面上看到的,电脑毕竟都是机器,编号比文字说明来的靠谱,当然作为人来说,说明肯定比编号靠谱。

常见的HTTP状态码和概要说明

101:协议切换,比如websocket协议在连接初始化时会用到。

200:成功,这个成功只是表示服务器正常处理完了,并不能代表逻辑上的正确性。

301:URL永久跳转,一般可以在header中看到Location,即跳转地址。

302:URL临时跳转,一般可以在header中看到Location,即跳转地址。

304:未修改,服务器发现请求内容标识未变动,通知客户端读取本地缓存文件即可。

HTTP代理

400:客户端请求信息格式问题或请求参数有误。

401:当前请求需要用户验证。

403:一般为禁止访问、执行,比如文件、目录等存在,但做了访问限制。

404:一般为文件、目录不存在,但也可以将其他情况伪装成为不存在。

500:出现这个一般都是服务端的代码直接抛出异常导致。

502:网络中网关或者代理在网络中出现错误,但不能排除是服务器内部的网关错误。

503:服务器暂时性过载或者当前无法处理。

504:网络中网关或者代理在网络中出现超时,没有收到响应。

但要特别注意的是,HTTP状态码并不代表一切,只能作为一种参考值,而且可能和预期不同,比如当发生5xx的服务器错误时,为了掩人耳目,可以将错误显示为4xx,从而避免外界更多的猜测和调试,但也会不利于自己的定位错误。

以下是已知的备查列表,因为内容太多,不适合全部写上,任何有兴趣知道的都可以跟帖,【知道君】会定期给出答复。

100、101、102

200、201、202、203、204、205、206、207、208、226

300、301、302、303、304、305、306、307、308

400、401、402、403、404、405、406、407、408、409、410、411、412、413、414、415、416、417、418、419、420、421、422、423、424、425、426、428、429、431、440、444、449、450、451、495、496、497、498、499

500、501、502、503、504、505、506、507、508、509、510、511、520、521、522、523、524、525、526