JSONP的优缺点

JSONP的优缺点

  1. 优点
    • 它不像XMLHttpRequest对象实现的Ajax请求那样受到同源策略,jsonp可以实现跨域
    • 它的兼容性更好,在老版本的浏览器中都可以运行,不需要XMLHTTPRequest或者ActiveX的支持
    • 能够直接访问响应文本,支持浏览器的双向通行
    • 在请求完毕后可以通过调用callback的方式回传结果,将回调方法的权限给了调用方。这个就相当于将controller层和view层终于分 开了。我提供的jsonp服务只提供纯服务的数据,至于提供服务以 后的页面渲染和后续view操作都由调用者来自己定义就好了。如果有两个页面需要渲染同一份数据,你们只需要有不同的渲染逻辑就可以了,逻辑都可以使用同 一个jsonp服务。
  2. 缺点
    • 它只支持get请求方式,而不支持post等其他类型的HTTP请求
    • 它只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行Javascript调用的问题
    • jsonp在调用失败的时候不会返回各种HTTP请求状态码
    • JSONP 是从其他域中加载代码执行。如果其他域不安全,很可能会在响应中夹带一些恶意代码,而此时除了完全放弃 JSONP 调用之外,没有办法追究。因此在使用不是你自己运维的 Web 服务时,一定得保证它安全可靠。
文章目录
  1. 1. JSONP的优缺点
|