您的位置:首页 > 理论基础 > 计算机网络

HTTP和HTTPS

2020-08-19 16:19 621 查看

HTTP和HTTPS复习

1、HTTP和HTTPS

HTTP协议(超文本传输协议):是一种发布和接收 HTML页面的方法。默认端口为80。

HTTPS:简单讲是HTTP的安全版,在HTTP下加入SSL层。默认端口为443。

SSL( 安全套接层)主要用于Web的安全传输协议,在传输层对网络连接进行加密,保障在Internet上数据传输的安全。

HTTPS比HTTP更安全,但是性能更低

2、浏览器发送HTTP请求的过程

1)当用户在浏览器的地址栏中输入一个URL并按回车键之后,浏览器会向HTTP服务器发送HTTP请求。HTTP请求主要分为“Get”和“Post”两种方法。

2)当我们在浏览器输入URL http://www.baidu.com 的时候,浏览器发送一个Request请求去获取 http://www.baidu.com 的html文件,服务器把Response文件对象发送回给浏览器。

3)浏览器分析Response中的 HTML,发现其中引用了很多其他文件,比如Images文件,CSS文件,JS文件。 浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件。

4)当所有的文件都下载成功后,网页会根据HTML语法结构,完整的显示出来了。

浏览器渲染出来的页面和爬虫请求的页面并不一样

3、HTTP的请求形式

url的形式:

URL:统一资源定位符,是用于完整地描述Internet上网页和其他资源的地址的一种标识方法。

基本格式:

scheme://host[:port#]/path/…/[?query-string][#anchor]

​ scheme:协议(例如:http, https, ftp)

​ host:服务器的IP地址或者域名

​ port:服务器的端口(如果是走协议默认端口,缺省端口80)

​ path:访问资源的路径

​ query-string:参数,发送给http服务器的数据

​ anchor:锚(跳转到网页的指定锚点位置)

4、HTTP的常见请求头

Host (主机和端口号)

对应网址URL中的Web名称和端口号,用于指定被请求资源的Internet主机和端口号,通常属于URL的一部分。

Connection (链接类型)

keep-alive在很多情况下能够重用连接,减少资源消耗,缩短响应时间,比如当浏览器需要多个文件时(比如一个HTML文件和相关的图形文件),不需要每次都去请求建立连接。

Upgrade-Insecure-Requests (升级为HTTPS请求)

升级不安全的请求,意思是会在加载 http 资源时自动替换成 https 请求,让浏览器不再显示https页面中的http请求警报。

User-Agent (浏览器名称)

Accept (传输文件类型)

指浏览器或其他客户端可以接受的MIME(Multipurpose Internet Mail Extensions(多用途互联网邮件扩展))文件类型,服务器可以根据它判断并返回适当的文件格式。

Referer (页面跳转处)

Referer:表明产生请求的网页来自于哪个URL,用户是从该 Referer页面访问到当前请求的页面。这个属性可以用来跟踪Web请求来自哪个页面,是从什么网站来的等。

Accept-Encoding(文件编解码格式)

指出浏览器可以接受的编码方式。编码方式不同于文件格式,它是为了压缩文件并加速文件传递速度。浏览器在接收到Web响应之后先解码,然后再检查文件格式,许多情形下这可以减少大量的下载时间。

Cookie (Cookie)

浏览器用这个属性向服务器发送Cookie。Cookie是在浏览器中寄存的小型数据体,它可以记载和服务器相关的用户信息,也可以用来实现会话功能。

x-requested-with :XMLHttpRequest (Ajax 异步请求)

5、常见的请求方法:GET和POST

GET是从服务器上获取数据,POST是向服务器传送数据

GET请求参数显示,都显示在浏览器网址上,HTTP服务器根据该请求所包含URL中的参数来产生响应内容,即“Get”请求的参数是URL的一部分。 例如:

http://www.baidu.com/s?wd=Chinese

POST请求参数在请求体当中,消息长度没有限制而且以隐式的方式进行发送,通常用来向HTTP服务器提交量比较大的数据(比如请求中包含许多参数或者文件上传操作等),请求的参数包含在“Content-Type”消息头里,指明该消息体的媒体类型和编码.

注意:避免使用Get方式提交表单,因为有可能会导致安全问题。 比如说在登陆表单中用Get方式,用户输入的用户名和密码将在地址栏中暴露无遗。

6、响应状态码

200:成功

302:临时转移至新的ur

307:临时转移至新的url

404:not found

500:服务器内部错误

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: