首先,阿星祝大家五一快乐丫~
提示:文末有福利!最新Python爬虫资料/学习指南
话不多说,开始学习
HTTP 响应
学习目的
掌握常用的响应状态码
- 响应状态码
响应状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:
状态码
Response 消息中的第一行叫做状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。
状态码用来告诉HTTP客户端,HTTP服务器是否产生了预期的Response.
HTTP/1.1中定义了5类状态码, 状态码由三位数字组成,第一个数字定义了响应的类别
1XX 提示信息 - 表示请求已被成功接收,继续处理
2XX 成功 - 表示请求已被成功接收,理解,接受
3XX 重定向 - 要完成请求必须进行更进一步的处理
4XX 客户端错误 - 请求有语法错误或请求无法实现
5XX 服务器端错误 - 服务器未能实现合法的请求
分类 | 分类描述 |
---|---|
1 | 信息,服务器收到请求,需要请求者继续执行操作 |
2 | 成功,操作被成功接收并处理 |
3 | 重定向,需要进一步的操作以完成请求 |
4 | 客户端错误,请求包含语法错误或无法完成请求 |
5** | 服务器错误,服务器在处理请求的过程中发生了错误 |
最常用的响应状态码
◆200 (OK): 找到了该资源,并且一切正常。
◆301(Moved Permanently): 客户请求的文档在其他地方,新的URL在Location头中给出,浏览器应该自动地访问新的URL。
◆302 (Found): 类似于301,但新的URL应该被视为临时性的替代,而不是永久性的。
◆304 (NOT MODIFIED): 该资源在上次请求之后没有任何修改。这通常用于浏览器的缓存机制。
◆400 (Bad Request): 请求出现语法错误。
◆403 (FORBIDDEN): 客户端未能获得授权。这通常是在401之后输入了不正确的用户名或密码。
◆404 (NOT FOUND): 在指定的位置不存在所申请的资源。
◆500 (Internal Server Error): 服务器遇到了意料不到的情况,不能完成客户的请求
◆503 (Service Unavailable): 服务器由于维护或者负载过重未能应答。例如,Servlet可能在数据库连接池已满的情况下返回503。服务器返回503时可以提供一个Retry-After头
HTTP Request header
使用Fiddler 能很方便的查看Reques header, 点击Inspectors tab ->Request tab-> headers 如下图所示
header 有很多,比较难以记忆,我们也按照Fiddler那样把header 进行分类,这样比较清晰也容易记忆。
>>>