[前端] jsonp实现
发布时间:2020-12-16 19:07:34 所属栏目:百科 来源:网络整理
导读:JSONP可以说是为了实现跨域请求操作而诞生的。 在一个jsonp请求中重写回调函数的名字。这个值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,比如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。 为jsonp请求指定一个回调
JSONP可以说是为了实现跨域请求操作而诞生的。 在一个jsonp请求中重写回调函数的名字。这个值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,比如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。 为jsonp请求指定一个回调函数名。这个值将用来取代jQuery自动生成的随机函数名。这主要用来让jQuery生成度独特的函数名,这样管理请求更容易,也能方便地提供回调函数和错误处理。你也可以在想让浏览器缓存GET请求的时候,指定这个回调函数名。
示例:
HTML页面布局: <div id="divCustomers"></div>
JS脚本代码: script type="text/javascript"> $.getJSON("jsonp.php?callback=?",function(data) { // 返回的是一个数组 var html = '<ul>'; for(var i = 0; i < data.length; i++) { html += '<li>' + data[i] + '</li>'; } html += '</ul>'; $('#divCustomers').html(html); }); </script> php程序: header('Content-type: application/json');
//获取回调函数名 $jsoncallback = htmlspecialchars($_GET ['callback']); // 获取url参数名 //json数据 $json_data = '["customername1","customername2"]';
//输出jsonp格式的数据 echo $jsoncallback . "(" . $json_data . ")"; // 这个是返回的数据
谢谢关注! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |