Web请求过程
一、Http解析
Http Header控制着成千上万的互联网用户的数据传输,控制着用户浏览器的渲染行为和服务器的执行逻辑。
HTTP请求头
Accept-Language: zh-cn,zh;q=0.5
Accept-Language表示浏览器所支持的语言类型,分别是中文和简体中文,优先支持简体中文。
Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7
Accept-Charset告诉 Web 服务器,浏览器可以接受哪些字符编码,分别是 GB2312、utf-8 和任意字符,优先顺序是 GB2312、utf-8、*。
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept表示浏览器支持的 MIME 类型,分别是 text/html、application/xhtml+xml、application/xml 和 */*,优先顺序是它们从左到右的排列顺序。
Accept-Encoding: gzip, deflate
Accept-Encoding表示浏览器有能力解码的编码类型,压缩编码是 gzip 和 deflate。
User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
User-Agent(用户代理),简称 UA,它是一个特殊字符串头,使得服务器能够识别客户端使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等
Host: 域名
Host表示请求的服务器网址;
Connection: Keep-Alive
Connection表示客户端与服务连接类型,Keep-Alive表示持久连接;
HTTP响应头
Server:Apache/1.3.6
使用的服务器名称
Content-Type:text/html;charset=GBK
用来指明接受者的实体正文的媒体类型
Content-Encoding:gzip
与请求报头Accept-Encooding对应,告诉浏览器服务端采用的是什么压缩编码
Content-Language:zh-cn
貌似了资源所用的自然语言,与Accept-Language对应
Content-Length:10527
指明实体正文的长度
Keep-Alive:timeout=5,max=120
保持连接的时间
HTTP状态码
200 客户端请求成功
302 临时跳转 用location指定
400 客户端请求语法错误,不能被服务器识别
403 服务器收到请求 但是拒绝服务
404 请求的资源不存在
500 服务器发生无法预知的错误
Web请求过程的更多相关文章
- Http协议简单解析及web请求过程
HTTP协议: HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统. 基于HTTP协议的客户端/服务器请求响应机制的信息交换过程包含下面几个步骤: 1) ...
- 《深入分析Java Web技术内幕》读书笔记 - 第1章 深入Web请求过程
第1章 深入Web请求过程 1 1.1 B/S网络架构概述 2 基于统一的应用层协议HTTP来交互数据. 1.2 如何发起一个请求 4 HTTP连接本质是建立Socket连接.请求实现方式:工具包如H ...
- Web请求过程总结
Web请求过程总结 1.CND架构图 图片来源:深入分析JavaWeb技术内幕(许令波著) 2.发起HTTP请求 发起一个HTTP请求就是浏览器建立socket通信的过程,HttpClient开源的通 ...
- 爬取百度页面代码写入到文件+web请求过程解析
一.爬取百度页面代码写入到文件 代码示例: from urllib.request import urlopen #导入urlopen包 url="http://www.baidu.com& ...
- web请求过程-学习使人快乐1
智齿离开我10个小时了,现在除了书啥都不能啃········呜呜呜~ ~~~~~~~~~~~~~~~~~~~想滑滑梯~~~~~~~~~~~~~~~~~~~ 网络请求过程 web请求大多使用B/ ...
- 1 深入Web请求过程
1.1 B/S网络架构概述 B/S 网络架构从前端到后端都得到了简化,都基于统一的应用层协议HTTP来交互数据,与大多数传统C/S互联网应用程 序采用的长连接的交互模式不同,HTTP采用无状态的短连接 ...
- [Web] Web请求过程之一:HTTP
请求过程: 1.用户在浏览器输入 www.sdjtu.edu.cn 这个URL. 2.浏览器请求 DNS 服务器将这个 URL 解析成对应的 IP 地址. 3.浏览器向 IP 地址对应的这个服务器发起 ...
- 深入Web请求过程
B/S网络架构 带来的好处: 1.客户端使用同一的浏览器. --浏览器的交互特性使其使用起来非常简便 2.服务器基于统一的http. --简化.规范开发模式,大大节省开发成本.如tomcat ngi ...
- WEB请求过程(http解析,浏览器缓存机制,域名解析,cdn分发)
概述 发起一个http请求的过程就是建立一个socket通信的过程. 我们可以模仿浏览器发起http请求,譬如用httpclient工具包,curl命令等方式. curl "http://w ...
- 【深入分析Java Web技术内幕】1、深入Web请求过程知识点
如何发起一个请求 发起一盒HTTP请求的过程就是建立一个Socket通信的过程! 既然发起一个HTTP的本质就是建立一个Socket连接,那么我们完全可以模拟浏览器来发起HTTP请求,这很好实现,如H ...
随机推荐
- mysql错误集合
一.This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its de 错误解决办法 这是我们开启了bin-log ...
- 高级数据类型-- 字符串(str),切片
一.字符串 字符串 就是 一串字符,是编程语言中表示文本的数据类型 在 Python 中可以使用 一对双引号" 或者 一对单引号' 定义一个字符串 虽然可以使用 \" 或者 \' ...
- 关于C++使用将整形转换为字符串进行格式化的问题
最近使用CTime类获取时间,因为在时间的格式上要求做到统一,所以会对时间信息进行格式化 目的:将时间信息生成为年4位,月2位,日2位,时2位,分2位,秒2位 也就是:2017-02-18 10:42 ...
- JAVA8之函数式接口
由于JDK8已经发布一段时间了,也开始逐渐稳定,未来使用JAVA语言开发的系统会逐渐升级到JDK8,因为为了以后工作需要,我们有必要了解JAVA8的一些新的特性.JAVA8相对JAVA7最重要的一个突 ...
- 剑指Offer 35. 数组中的逆序对 (数组)
题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P%1000 ...
- Git删除分支/恢复分支
• 删除一个已被终止的分支 如果需要删除的分支不是当前正在打开的分支,使用branch -d直接删除 git branch -d <branch_name> • 删除一个正打开的分支 如 ...
- Gym - 101201E:Enclosure (点到凸包的切线)
题意:给点N棵树,前K棵是已经拥有的,现在可以再拥有一棵树,问形成的最大凸包面积. 思路:先求K棵树的凸包C,然后对于后面的N-K棵树,我们先判断是否在凸包内,如果不在,我们要求两个切线. 这里分类讨 ...
- requests.get() 的 headers 参数
官方文档requests.get()方法的定义如下: 源码如下: 看到最后一行return,get方法最后是通过调用requests.request 方法实现的,其实在其它的请求方法如post,put ...
- zabbix图形化界面乱码(二)
中文字体乱码,解决办法: 1:从Windos下拷贝字体到服务器,C:\Windows\Fonts,有很多,看着喜欢的拷贝 2:然后在zabbix 服务端,进入到zabbix web的工作目 ...
- SVN 撤回已提交的代码
1. TortoiseSVN -----> Show log 2.右键点击你想撤回的提交 -> Revert changes from this revision ----->Rev ...