学习:网络知识

1. 服务端主动push资源的技术有哪些?

  1. websocket
  2. event source,SSE

2. 浏览器内不同标签页如何通信?

  1. iframe+postMessage(可跨域)
  2. localStorage(同源)
  3. cookie
  4. Window.open(同源)
  5. SSE

实例:https://xv700.gitee.io/message-communication-for-web/

3. 跨域解决方案?

  1. CORS
  2. node中间服务器
  3. Nginx反向代理
  4. jsonp
  5. iframe+postMessage
  6. iframe+document.domain
  7. window.name
    一个窗口生命周期内,载入的所有页面共同享有window.name,只能是字符串,只有一个2mb左右,但是持久存在
  8. webSorcket

https://www.cnblogs.com/itliucheng/p/4917518.html

4. 浏览器的同源策略了解过吗?

  1. 获取非本页面信息?需要满足同协议、同ip地址,同端口。
  2. why?防止被盗取敏感信息。

5. 可以跨域的标签有哪些?

<script>/<link>/<img>都可以通过get方法获取其他网站的静态资源

6. jsonp原理以及实践

  1. 利用可以跨域的标签来进行get请求,携带参数callback=fnName,如果利用script标签,后台返回的就应该是js格式内容的字符串,fnName函数并携带参数。
    https://www.cnblogs.com/itliucheng/p/4917518.html

7. CORS简单请求的要求?

  1. 请求方式:get/post/head
  2. 头信息:不超出下字段accept,accept-language,content-language,last-event-id,content-typt:application/x-www-form-urlencoded、multipart/form-data、text/plain

8. url的组成是什么?

  1. 协议://主机名:端口/路径?查询参数1&参数2#锚

9. 计算机常用端口以及场景?

80:http
443:https
21:ftp
22:ssh/重定向

10. 浏览器对象有哪些及其方法?

  1. window
  2. location
  3. history
  4. navigation/screen

11. 浏览器正常加载网页的流程是怎样的?

12. js文件的下载和执行顺序?

13. 优雅降级和渐进增强

优雅降级
先完成所有功能,再去兼容低版本浏览器,做内容的删减。相当于向下兼容,做减法和兼容。

渐进增强
先在低版本浏览器上完成基本要求,在逐渐增加高级交互效果等功能。相当于向上兼容,做加法和升级。

原文地址:https://www.cnblogs.com/vera-7c/p/13838040.html