状态码是用来告知客户端服务器端处理请求的结果。凭借状态码用户可以知道服务器是请求处理成功、失败或者是被转发;这样出现了错误也好定位。状态码是由3位数字加原因短语组成。3位数字中的第一位是用来指定状态的类别。
共有五种如下:
1xx(Informational,信息性状态码):表示接收的请求正在处理
2xx(Success,成功状态码):表示请求正常处理完毕
3xx(Rediretion,重定向状态码):表示需要客户端进行附加操作
4xx(Client Error,客户端错误状态码):表示客户端的错误,服务器无法处理请求。
5xx(Server Error,服务器错误状态码):表示服务器处理请求出错。
常用的几种HTTP状态码(最常用的8种加粗):
200:请求成功,服务器已成功处理了请求
300:多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择
301(Moved Permanently,永久移动):请求的资源已被永久地移动到新URL,返回信息会包括新的URL,浏览器会自动定向到新URL,今后任何新的请求都应使用新的URL代替。
302(临时移动):资源只是临时被移动,客户端应继续使用原有URL
400(Bad request):客户端请求的语法错误,服务器无法理解
401(Unauthorized):请求需要有通过HTTP认证的认证信息
403(Forbidden):无权限,服务器拒绝提供服务
404(Not Found):没找到资源
408(Request Timeout):表示客户端请求超时
500(Internal Server error):服务器内部错误
503(Server Unavailable):服务暂不可用,表明服务器暂时处于超负载或正在进行停机维护,现在无法处理请求。
504(Gateway Timeout):网关超时,是代理服务器等待应用服务器响应时的超时。
505(HTTP version not supported):服务器不支持请求的HTTP协议的版本,无法完成处理。