首先用户输入字符串,浏览器处理输入信息后发起请求,通过网络到达服务器,然后服务器将响应通过网络发送给浏览器,浏览器渲染后,页面加载完成。http协议即超文本传输协议,是一个应用层协议,基于tcp协议,包含请求和响应两部分,http协议本身是无状态的。
http协议包含起始行、headers和附带信息。get表示请求一个指定资源,post用于将实体提交到指定的资源,post用于请求有效载荷替代目标资源,delete表示删除指定的资源。安全的方法指不会修改服务器数据的方法,包括get、head、options,幂等的方法指同样的请求执行一次与连续执行多次的效果是一样的方法,包括get、head、options、put、delete。200表示客户端请求成功,301表示资源被永久转移到其它url,302表示临时跳转,401表示请求未授权,404表示请求资源不存在,500表示服务器内部发生了不可预期的错误,504表示网关无法在规定的时间内获得想要的相应。accept表示接受类型,content-type表示客户端发送出去实体内容的类型,cookie表示有cookie并且同域访问时会自动带上,user-agent表示用户客户端的一些必要信息。set-cookie表示设置和页面关联的cookie,server表示服务器的一些相关信息。缓存包括强缓存和协商缓存。强缓存的字段包括expires,即时间戳,和cache-control,即可缓存性、到期和重新加载。协商缓存的字段包括etag和last-modified。
开发浏览器、服务器、网络爬虫都需要了解http协议。