Ajax与Jsonp

一.什么是ajax?ajax的原理#

1.ajax是一种浏览器端不用刷新整个页面就可以与服务器通信的技术
2.他不是新技术,而是由多种技术组合而成的技术
3.包括JavaScript(绑定和处理所有数据),HTML和css3(呈现),DOM(实现动态显示和交互),xml和json(进行数据交换与处理),XMLHttpRequest(用于进行异步请求数据读取)
原理:相当于在用户和服务器之间加了一个中间层(ajax引擎),使用户操作与服务器相应异步化。对于用户请求ajax引擎会做一些数据验证和数据处理。不是所有的请求都提交给服务器,当需要从服务器读取新数据时由ajax引擎代为向服务器提交请求。ajax最大优点就是不刷新整个页面的前提上与服务器通信维护数据

二.ajax的优缺点#

优点:
1.通过异步模式,网页无刷新,提升了用户体验。
2.优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用
3.ajax引擎在客户端运行,承担了一部分本来有服务器承担的工作,从而减少了大用户量下的服务负载
4.基于标准化的并被广泛支持的技术,不需要下载插件或小程序
缺点:
1.ajax不支持浏览器back按钮
2.安全问题,ajax暴露了与服务器交互的细节
3.对搜索引擎支持比较弱
4.破坏了程序的异常机制
5.不容易调试

三.jsonp原理

动态创建一个script标签,利用script标签src属性访问没有限制,实现跨域。web客户端通过与调用脚本一样的方式来调用服务器上动态生成的js格式文件(后缀json),服务器之所以要动态生成json文件,目的是把客户端要的数据装进去,允许用户端传递一个callback参数给服务端,然后服务端韩慧数据时会将这个callback参数作为函数名来包裹住json数据,这样客户端就可以随意定制自己的函数来自动处理返回数据

四.ajax与jsonp的异同

相同点:都是请求一个IRL
不同点:ajax的核心是通过XMLHttpRequest获取内容
json的核心是动态添加一个<script>来调用服务器提供的js脚本

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,156评论 19 139
  • 1、ajax和jsonp这两种技术在调用方式上“看起来”很像,目的也一样,都是请求一个url,然后把服务器返回的数...
    LiLi原上草阅读 390评论 0 2
  • ajax的基本概念 了解这个概念,首先得先知道同步交互与异步交互 同步交互:客户端浏览器给服务器发送一个请求,服务...
    苗泽云阅读 560评论 0 1
  • AJAX 原生js操作ajax 1.创建XMLHttpRequest对象 var xhr = new XMLHtt...
    碧玉含香阅读 3,356评论 0 7
  • 这部影片曾经斩获了奥斯卡最佳影片和最佳男主角奖两个小金人,虽然早已能从一些途径看到此片,我却久久没有点开。...
    阿无凡阅读 119评论 0 1