《HTTP状态码1XX深入理解》里发起了一个投票:客户端与服务端通信时,所有的http状态码是否都是服务端返回的?
现公布答案:
是的!
http状态码共5种:
1XX表示服务端已经收到了请求,但是还需要进一步处理;
2XX表示服务端已经收到了请求,并且已经分析处理完;
3XX表示服务端已经收到了请求,但是还需要其他资源或者服务处理;
4XX表示服务端已经收到了请求,但是无法理解,说明客户端请求姿势不正确;
5XX表示服务端已经收到了请求,但是由于服务端自身问题无法正确响应。
有的朋友表示不服:如果客户端连接服务端出现了通信错误怎么表示呢?
这时候没有任何错误码,通信错误了,服务端想发给客户端,客户端也收不到。所以客户端就是获取数据为空。
朋友还不服:有个错误码叫499,就是建立连接错误。和你说的服务端不返回不就矛盾了吗?
499, Client Closed Request, 客户端主动断开连接。
是指一次http请求在客户端指定的时间内没有返回响应,此时,客户端会主动断开连接,此时表象为客户端无响应返回,而nginx的日志中会status code 为499。499并不是http状态码的标准定义,而是nginx为了方便大家理解和阅读,将服务端返回结果为空的自行转义为499的。
大家明白了吗?
最后再安利一波我自己开发的缘分测试小游戏,好容易做出来了,还是想发挥点作用。在【编程一生】公众号输入下面格式的字就可以获取缘分测试结果。提示:如果程序判断不是人的名字有可能程序也很无语,无法告诉你两个东西的缘分;如果一天内测试次数太多,游戏也设置了防沉迷功能,当天就不再返回结果了,第二天自动恢复。可能一些朋友已经体验到了吧?
格式为
男:XX 女:XX