前端 jsonp 的陷阱
在前端开发中,jsonp(json with padding)是一种跨域调用 api 的方法。然而,在使用 jsonp 时,需要注意一个潜在的问题。
考虑以下代码:
var wx_auth = function () { var jsonp = document.createelement('script'); jsonp.type = 'text/JavaScript'; jsonp.src = ''; document.getelementsbytagname('head')[0].appendchild(jsonp); }; var jsonp_cb = function() { }; // 在点击事件中调用 wx_auth wx_auth();
登录后复制
问题是,如果 jsonp.src 为空字符串,是否会调用 jsonp_cb 回调函数?
答案是:不会调用。
在浏览器中,当 src 属性为空时,脚本将被忽略。因此,上面的 wx_auth 函数生成的有效 javascript 代码应该是:
<script type="text/javascript" src=""></script>
登录后复制
缺少 src 属性值会导致脚本无法加载,从而无法触发 jsonp_cb 回调函数。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
【小浪云服务商 - 服务器12元起 - 挂机宝5元起】
THE END
暂无评论内容