JSONP扫盲篇

参考资料

  • JSONP-w3cschools
  • JSONP的工作原理是什么
  • JSONP详解
  • 说说JSON和JSONP,也许你会豁然开朗,含jQuery用例
  • 浏览器同源政策及其规避方法

JSONP的起源

  1. 普通的Ajax请求不能跨域
  2. Web上拥有src属性的标签(例如
    • 不得不提的jQuery中的实现方式
      • jQuery在处理JSONP类型的请求时,自动帮你生成回调函数并把数据取出来供success属性方法来调用。
      • 在jQuery中,使用JSONP感觉就和使用Ajax没有区别,但实际上它们的底层实现实现是完全不一样的。
      • 通常都会把JSONP封装到了ajax中,但是JSONP不是Ajax的一个特例。

    需要后台支持什么

    • 当使用script请求地址时,会将返回的字符串,默认当成js解析。由于后端返回是的callback(xxx),所以会调用本地的callback函数。

    • 从原理上来看,要使用JSONP,必须要后端返回相应的数据,这个就是JSONP的模式了,允许客户端传递一个callback函数,后端将数据包裹在callback函数中返回。

    容易混淆的概念之xhr

    • XMLHttpRequest 用于在后台与服务器交换数据,是Ajax的基础。
    • 可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

你可能感兴趣的:(web前端,JavaScript)