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) jsonp2) iframe
3) window.name、window.postMessage
4) 服务器上设置代理页面
相关文章推荐
- ajax是什么? ajax的交互模型? 同步和异步的区别? 如何解决跨域问题?
- ajax是什么? ajax的交互模型? 同步和异步的区别? 如何解决跨域问题?
- Ajax 是什么?Ajax 的交互模型?同步和异步的区别?如何解决跨域问题?以及 HTTP状态码
- AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法?
- AJAX是什么?AJAX的交互模型(流程)?同步和异步的区别?AJAX跨域的解决办法?
- AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法?
- AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法?
- AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法?
- AJAX是什么? AJAX的交互模型(流程)?同步和异步的区别? AJAX跨域的解决办法?
- ajax 、ajax的交互模型、如何解决跨域问题
- ajax 、ajax的交互模型、如何解决跨域问题
- ajax 、ajax的交互模型、如何解决跨域问题——面试题
- ajax 有那些优缺点-如何解决跨域问题-ajax过程
- Ajax异步交互解决数据乱码问题
- ajax异步交互过慢的问题如何转嫁
- 使用HTML5 跨域共享特性解决AJAX跨域数据同步问题
- ajax如何解决跨域问题
- 谷歌浏览器如何设置可以解决Ajax跨域问题?
- iOS开发工具-如何使用网络封包分析工具Charles,通过配置proxy对http、https、tcp、udp 等协议的请求响应过程交互信息进行分析、判断、解决我们移动开发中的遇到的各种实际问题。
- java多线程的等待唤醒机制及如何解决同步过程中的安全问题