一、JSONP意思 jsONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1、example、com 的网页无法与不是 server1
jsONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1、example、com 的网页无法与不是 server1、example、com的服务器沟通,而 html 的<script> 元素是一个例外。利用 <script>元素的这个开放策略,网页可以得到从其他来源动态产生的 JSON 资料,而这种使用模式就是所谓的 JSONP。用 JSONP 抓到的资料并不是 JSON,而是任意的javascript,用 JavaScript 直译器执行而不是用 JSON 解析器解析。
比如客户想访问Http://www、yiwuku、com/myService、aspx?jsonp=callbackFunction
假设客户期望返回JSON数据:[“customername1″,”customername2”]
那么真正返回到客户端的Script Tags: callbackFunction([“customername1″,”customername2″])
可能的调用方式:
<script type=”text/javascript” src=”http://www、yiwuku、com/myService、aspx?jsonp=callbackFunction”></script>
<script type=”text/javascript”>
function CustomerLoaded(result,methodName)
{
var html='<ul>’;
for(var i=0;i<result、length;i++)
{
html+='<li>’+result[i]+'</li>’;
}
html+='</ul>’;
document、getElementById(‘divCustomers’)、innerHTML=html;
}
</script>
<div id=”divCustomers”></div>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1、0 Strict//EN” “http://www、w3、org/TR/xhtml1/DTD/xhtml1-strict、dtd”>
<html xmlns=”http://www、w3、org/1999/xhtml”>
<head>
<title>Top Customers with Callback</title>
</head>
<body>
<div id=”divCustomers”>
</div>
<script type=”text/javascript”>
function onCustomerLoaded(result, methodName) {
var html = ‘<ul>’;
for (var i = 0; i < result、length; i++) {
html += ‘<li>’ + result[i] + ‘</li>’;
}
html += ‘</ul>’;
document、getElementById(‘divCustomers’)、innerHTML = html;
}
</script>
<script type=”text/javascript” src=”http://www、yiwuku、com/myService、aspx?jsonp=onCustomerLoaded”></script>
</body>
</html>
--结束END--
本文标题: 什么是JSONP
本文链接: https://lsjlt.com/news/521205.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0