1、HTTP的请求过程
2、URL
(1)URI/URL/URN
URI: Uniform Resource Identifier,统一资源标志符(对URL+URN的标志)
URL: Uniform Resource Locator,统一资源定位符(网址)
URN,之命名资源而不指定如何定位资源
URN:Uniform Resource Name,统一资源名称
(2)、URL的形式
scheme://host[:port#]/path/../[?qurey-string][#anchor]
scheme:协议
host:服务器的IP地址或者域名
port: 服务端口号如果走协议默认端口,80 or 443
path:访问资源路径
qurey-string:参数
anchor:锚(跳转到网页的指定锚点)
3、HTTP和HTTPS
HTTP(Hyper Text Transfer Protocol):超文本传输协议;默认端口号80
HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer):HTTP+SSL(安全套接字层);默认端口号443,加密版http,但性能比http低
4、浏览器查看网络请求(快捷键F12)
Network监听组件
Name下面一行条目,代表一次发送请求和接收响应的过程。
l Name:请求名称
l Status:响应状态码,200表示正常
l Type:请求的文档类型。document代表HTML文档
l Initiator:请求源
l Size:从服务器下载的文件和请求的资源大小,如果从缓存中区的资源,会显示from cache
l Time:发起请求到获取相应所用总时间
l Waterfall:网络请求可视化瀑布
5、请求
客户端请求,包含4部分
Request Method:请求方法(get和post)
Request URL:请求的网址(他可以唯一确定我们想请求的资源)
l Request Headers:请求头
l Accept:客户端可以接受那些类型的信息
l Accept-Encoding:客户端可接受的内容编码
l Host:请求资源主机IP和端口号,内容为请求URL的原始服务器或网关的位置
l Cookie/Cookies:存储用户本地的数据,用于位置当前访问会话
l Referer:表示请求从哪个页面发送过来
l User-Agent/UA:表示客户端的操作系统、浏览器版本等信息
l Content-Type:也叫互联网媒体类型,表示请求中媒体类型
Request Body:请求体
一般包含在POST请求中的表单数据;GET请求,请求体则为空
6、响应
服务器的响应,包含3部分:
Respouse Status Code:响应状态码(由三个十进制数字组成,第一个十进制数字定义了状态码的类型)
分类分类描述1**信息,服务收到请求,需要请求者继续执行操作2**成功,操作被成功接收并处理3**重定向,需要进一步的操作以完成请求4**客户端错误,请求包含语法错误或无法完成请求5**服务器错误,服务器在处理请求的过程中发生了错误Respouse Headers:响应头(包含服务器对请求的应答信息)
l Date:相应产生的时间
l Last-Modified:资源的最后修改时间
l Content-Encoding:相应内容的编码
l Server:包含服务器信息,eg:名称、版本号等
l Content-Type:文档类型,指定返回的数据类型
l Set-Cookie:高速浏览器需要将此内容放在Cookies中,下次请求携带Cookies请求
l Expires:指定响应过期时间,可以代理服务器或浏览器将加载的内容更新到缓存中每次访问时直接从缓存中加载,降低服务器负载,缩短加载时间
Respouse Body:响应体,响应的正文数据
eg:请求网页时,响应体是网页的HTML代码
请求图片时,响应体是图片的二进制数据
爬虫时,通过响应体得到网页的源代码,JSON数据等,从中提取内容