笔试&&面试经验前端攻城狮Web前端之路

整理前端面试题(十二):HTTP和Ajax面试题

2017-09-02  本文已影响880人  熠辉web3
200ok.png

1. 解释jsonp的原理,以及为什么不是真正的ajax.

  1. JSONP 的原理:通过<script>标签向服务器发送请求,将前端函数名称作为参数传递到服务器,服务器接收到请求后将 JSON 数据作为该方法的参数,返回 JavaScript 文本,前端方法就可以拿到数据。
  2. ajax是异步的,jsonp是同步的,所以它并不是真正的ajax

2. 请描述一下cookies,sessionStorage和localStorage的区别?


3. 如何解决跨域问题?


4. 简述ajax 的过程

  1. 创建XMLHttpRequest对象,也就是创建一个异步调用对象
  2. 创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息
  3. 设置响应HTTP请求状态变化的函数
  4. 发送HTTP请求
  5. 获取异步调用返回的数据
  6. 使用JavaScript和DOM实现局部刷新

5. http常见的状态码有那些?分别代表是什么意思?

200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误


6. 一个页面从输入 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 服务器提供资源服务,客户端开始下载资源。


7. 当我们通过Ajax拿到服务器返回的JSON格式的数据时,该如何转换成对象的形式?

使用JSON.parse()方法


8. jQuery中的全局Ajax事件有哪些?

详情请参考jQuery文档: Category: Global Ajax Event Handlers


9. HTTP协议目前常用的有哪几个?KEEPALIVE从哪个版本开始出现的?

HTTP协议目前常用的有1.0和1.1版本, KEEPALIVE是1.1版本才开始出现的


10.请列举出几个你所知道的模板引擎?

上一篇 下一篇

猜你喜欢

热点阅读