您的位置:首页 > 其它

Ajax 的概念及过程?Ajax 的交互模型?同步和异步的区别?如何解决跨域问题?

2016-08-22 17:59 639 查看

Ajax 是什么:

1) 通过异步模式,提升了用户体验

2) 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用

3) Ajax 在客户端运行,承担了一部分本来由服务器承担的工作,减少了大用户量下的服务器负载。

Ajax 的过程:

1) 创建XMLHttpRequest对象,也就是创建一个异步调用对象

2) 创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息

3) 设置响应HTTP请求状态变化的函数

4) 发送HTTP请求

5) 获取异步调用返回的数据

6) 使用JavaScript和DOM实现局部刷新

Ajax 的最大的特点:

1) Ajax可以实现动态不刷新(局部刷新)

2) readyState 属性 状态 有5个可取值: 0 = 未初始化,1 = 启动, 2 = 发送,3 = 接收,4 = 完成

Ajax 同步和异步的区别:

1) 同步:提交请求 -> 等待服务器处理 -> 处理完毕返回,这个期间客户端浏览器不能干任何事

2) 异步:请求通过事件触发 -> 服务器处理(这是浏览器仍然可以作其他事情)-> 处理完毕

ajax.open方法中,第3个参数是设同步或者异步。

Ajax 的缺点:

1) Ajax 不支持浏览器 back 按钮

2) 安全问题 Ajax 暴露了与服务器交互的细节

3) 对搜索引擎的支持比较弱

4) 破坏了程序的异常机制

5) 不容易调试

解决跨域问题:

1) jsonp

2) iframe

3) window.name、window.postMessage

4) 服务器上设置代理页面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐