ajax
1.什么是ajax?
AJAX全称为“Asynchronous JavaScript
and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术
它使用:
用XML+CSS来标准化呈现
用XML和XSLT进行数据交换和相关操作
用XMLHttpRequest对象与WEB服务器进行一步通信
用js操作dom进行动态显示和交互
用js绑定和处理所有数据
2.ajax工作原理
由客户端请求ajax引擎,再由ajax引擎请求服务器,服务器做出一系列响应后,把结果返回给ajax,最后再由ajax决定把结果写到客户端的什么位置。
Ajax其核心有JavaScript、XMLHTTPRequest、DOM对象组成,通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用JavaScript来操作DOM而更新页面。
3.ajax优缺点
优点:
1.无刷新更新数据
2.异步与服务器通信
3.前后端负载平衡
4.基于标准被广泛支持
5.界面与应用分离
缺点:
1.ajax干掉了Back和History功能,即对浏览器机制的破坏。
2.ajax也有安全问题,它会暴露数据和服务器逻辑。
3.对搜索引擎支持较弱。
4.不能很好地支持移动设备
5.破坏程序的异常处理机制
6.客户端过肥,增多开发上的成本。
jsonp
1.什么是jsonp
JSONP是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。
2.jsonp的原理
动态创建一个script标签,利用src属性访问没有限制,实现跨域。
3.ajax和jsonp的区别
1.ajax和jsonp调用方式很像,目的一样,都是请求url,然后把服务器返回的数据进行处理。
2.实质不同
/ / / /ajax的核心是通过xmlHttpRequest获取非本页内容
/ / / /jsonp的核心是动态添加script标签调用服务器提供的js脚本(.json)
3.区别
不存在是否能跨域
ajax通过服务端代理一样跨域
jsonp也不排斥同于的数据获取
4. 关于get和post
jsonp只支持get请求,ajax支持get和post
网友评论