总是会遇到这样的问题:请讲述一下JSONP的工作原理,后来发现挺重要的。于是下来总结了一下,算是为将来的笔试或者面试
准备一下,我们知道,javaScript是一种在Web开发中经常使用的前端动态脚本技术,但是呢,由于安全问题,在JavaScript中,有一个很重要的安全性限制,被称为“Same-Origin Policy”
同源策略)(同源策略的概念:<大概的意思是这样的>协议、域名、端口一样才能互相访问。)。这一限制让页面之间的互相访问有了许多的阻碍,但是有时候,我们需要跨域访问,于是就出现了
这道题:请讲述一下JSONP的工作原理。因为jsonp可以实现跨域访问。
下面说一下JSONP的跨域方法:
假如现在有两个网址页面一个是:;另一个是;现在我们想让请求 上面的url中传递了一个param参数,告诉服务器我要查的是param为1的信息, 总的来说:过程是这样的,首先在客户端注册一个callback (如:'jsonpCallback'),
那么问题来了,如何才能访问到呢?哈哈,有请主角
而callback参数则告诉服务器,我的本地回调函数叫做jsonpCallback,所以请把查询结果传入这个函数中进行调用。
服务器就会在的页面生成代码提供给。
例如:生成jsonpCallback({param:1,good:true});返回给请求页面。
然后把callback的名字(如:jsonpCallback)传给服务器。注意:服务端得到callback的数值后,
要用jsonpCallback({json数据})把将要输出的json内容包括起来,
此时,服务器生成 json 数据被客户端正确接收。