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