网络

1.一个页面从输入URL到页面加载显示完成,这个过程中都发生了什么?

分为4个步骤:
1、当发送一个URL请求时,不管这个URL是Web页面的URL还是Web页面上每个资源的URL,
    浏览器都会开启一个线程来处理这个请求,同时在远程DNS服务器上启动一个DNS查询。
    这能使浏览器获得请求对应的IP地址。
2、浏览器与远程Web服务器通过TCP三次握手协商来建立一个TCP/IP连接。
    该握手包括一个同步报文,一个同步-应答报文和一个应答报文,这三个报文在 浏览器和服务器之间传递。
    该握手首先由客户端尝试建立起通信,而后服务器应答并接受客户端的请求,最后由客户端发出该请求已经被接受的报文。
3、一旦TCP/IP连接建立,浏览器会通过该连接向远程服务器发送HTTP的GET请求。
    远程服务器找到资源并使用HTTP响应返回该资源,值为200的HTTP响应状态表示一个正确的响应。
4、此时,Web服务器提供资源服务,客户端开始下载资源。

请求返回后,便进入了我们关注的前端模块:
简单来说,浏览器会解析HTML生成DOM Tree,其次会根据CSS生成CSS Rule Tree,而javascript又可以根据DOM API操作DOM;

2.说说浏览器本地存储?

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,286评论 19 139
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 4,196评论 0 0
  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 3,783评论 2 7
  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 5,333评论 1 23
  • 文卫村曾是晨光中学和晨光医院的简称,它坐落在山顶,因此我们自称是山上的人,在这山坡上渡过了我们无忧的童年,少年,和...
    蓝色梦幻_60e5阅读 327评论 0 6