JS-服务器

目录

        服务器

浏览器

HTTP协议

HTTPS

HTTP请求

HTTP请求的方式

域名(网域)

域名级别

DNS服务器

URL

URL转码

从浏览器输入地址栏,到页面完全展示都经历了什么


服务器

就是计算机,但是与普通计算机有区别: 保密性/安全性/稳定性的不同;

服务器分硬件和软件,它们一起组成服务器;

响应方

浏览器

负责发送请求,请求服务器上的内容并显示出来.

HTTP协议

全称  HyperText Transfer Protocal
作用: 规定前后端之间的数据传输的规则

HTTP 是一种无状态 (stateless) 协议, HTTP协议本身不会对发送过的请求和相应的通信状态进行持久化处理。这样做的目的是为了保持HTTP协议的简单性,从而能够快速处理大量的事务, 提高效率。

HTTP 协议主要由三大部分组成:

    起始行(start line):描述请求或响应的基本信息;
    头部字段(header):使用 key-value 形式更详细地说明报文;
    消息正文(entity):实际传输的数据,它不一定是纯文本,可以是图片、视频等二进制数据。

其中起始行和头部字段并成为 请求头 或者 响应头,统称为 Header;

消息正文也叫做实体,称为 body。HTTP 协议规定每次发送的报文必须要有 Header,但是可以没有 body,也就是说头信息是必须的,实体信息可以没有。

而且在 header 和 body 之间必须要有一个空行(CRLF)

HTTP 一般是明文传输,很容易被攻击者窃取重要信息,鉴于此,HTTPS 应运而生。

HTTPS

HTTPS是身披SSL外壳的HTTP。HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。使用HTTPS的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。(PS:TLS是传输层加密协议,前身是SSL协议,由网景公司1995年发布,有时候两者不区分。)

HTTPS 和 HTTP 有很大的不同在于 HTTPS 是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在 HTTP 的基础上增加了 SSL 层,也就是说 HTTPS = HTTP + SSL

HTTP请求

 HTTP请求包括三部分,分别是请求行(请求方法)、请求头(消息报头)和请求体(请求正文)。

浏览器每一次根据HTTP协议,发起一次去服务器获取数据的行为,就是一次HTTP请求 。

network面板

  • Headers该资源的HTTP头信息。

  • Preview根据你所选择的资源类型(JSON、图片、文本)显示相应的预览。

  • Response显示HTTP的Response信息。

  • Cookies显示资源HTTP的Request和Response过程中的Cookies信息。

  • Timing显示资源在整个请求生命周期过程中各部分花费的时间。

请求首行由请求Method, URL 字段和HTTP Version三部分构成, 请求行就是定义了本次请求的请求方式, 请求的地址, 以及所遵循的HTTP协议版本;

HTTP请求的方式

根据发送HTTP请求的目的,HTTP协议中规定了很多种请求方式; 主要是post和get。

1GET请求指定的页面信息,并返回实体主体。
2POST向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。

GET和POST的区别:

GETPOST
目的从服务器上获取内容往服务器上传递内容
参数携带携带在URL的Search部分(Search由一个问号和一个querystring组成)请求正文
数据容量所以受地址栏的长度限制.不同的浏览器长度限制不同。例如IE为2KB+无限制
安全性较差,会被浏览器缓存,导致信息泄露较好
触发方式地址栏、a标签、video、audio、img、link、script、表单、AJAX表单、AJAX

域名(网域)

由于IP地址具有不方便记忆并且不能显示地址组织的名称和性质等缺点,人们设计出了域名,并通过网域名称系统(DNS)来将域名和IP地址相互映射,使人更方便地访问互联网,而不用去记住能够被机器直接读取的IP地址数串。

http://www.baidu.com
http://www.1000phone.com
http://stu.1000phone.net

域名级别

分为一级域名、二级域名、三级域名等

一级域名: sina.cn、 baidu.com 、 1000phone.net

二级域名: zhidao.baidu.com 、 stu.1000phone.net

三级域名: x.zhidao.baidu.com、 m.stu.1000phone.net
 

DNS服务器

DNS是一个域名系统,是万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
简单来说:域名与IP地址的查找服务器

URL

统一资源定位符 (uniform resource location)。就是我们通常意义上说的网址。

格式:scheme://host.domain:port/path/filename

  • scheme - 定义因特网服务的类型。最常见的类型是 http,https;

    Scheme访问作用
    http超文本传输协议以 http:// 开头的普通网页。不加密。
    https安全超文本传输协议安全网页,加密所有信息交换。
    ftp文件传输协议用于将文件下载或上传至网站。
    file文件协议您计算机上的文件。
  • host - 主机(http 的默认主机是 www)

  • domain - 域名,比如 1000phone.net

  • :port -端口号(http 的默认端口号是 80; https的默认端口443

  • path - 服务器上的路径(如果省略,则文档必须位于网站的根目录中)。

  • filename - 文档/资源的名称

  • search - 查询串

  • hash - 哈希值

  • http://10.30.151.3/index.html?a=1&b=2#vvvvvvvvvvvv
    协议: http
    主机: 10.30.151.3
    端口: 默认80;
    path: /
    filname: index.html
    search: ?a=1&b=2
    hash: #vvvvvvvvvvvvv

    URL转码

  • 转码:将不合规则的字符转变成合规则的字符;
  • encodeURIComponent这个函数用于转码

  • ----------------------------------------------------------------------------

  • 解码:将合规则的字符再转换成原字符;

  • decodeURIComponent这个函数用于解码

从浏览器输入地址栏,到页面完全展示都经历了什么

一 、接收到输入的字符串

二、 分析字符串的格式,判定是否是URL

三、将域名转换为ip地址

1 查看浏览器缓存中是否有该域名与ip地址的对应关系 如果有就得到ip地址进行第四步 如果没有本栏目将继续向下

2 操作系统也有缓存 查看 如果有 本栏目终止 进行第四步 如果没有继续向下

3 路由器缓存

4 调用操作系 统的一个服务,发送请求去DNS服务器,得到结果。如果没有,就真没有 如果有就得到IP地址了。

四、浏览器会发送TCP请求,申请建立TCP连接。服务器验证,验证通过,连接建立。

五、 浏览器开始发送请求内容

六、 服务器接收到请求 进行响应

七、 浏览器接收到数据(首页html的文件内容)

八、 断开连接

九、浏览器开始处理数据

1 建立DOM树

2 建立样式树

3 DOM树与样式树结合生成渲染树

4 浏览器开始渲染页面

十、处理数据的过程中会发现还有更多的资源要请求 此时会重复以上步骤

十一、 所有资源加载并处理完毕 执行onload事件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值