关于$.ajax()跨域获取jsonp格式的数据疑惑
根据jquery的文档里写的格式
$.ajax({
type:"POST",
url:"xxx.xxxx.com/1",
dataType:"jsonp",
timeout:"2000",
success:function(data){
console.log(data)
}
})
服务器上的1.json文件内容为
jsonp({"name":'123"})
问题出现在success这一步,每次我执行代码就会出现jsonp未定义的报错,只能在$.ajax外部添加一个方法function jsonp(data){console.log(data)}来获取jsonp数据,同时要把success这步删除。这究竟是什么道理呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
jasonp是利用dom添加script实现的。当然不能那么做了。
JSONP 实质就是在HTML里插入
<script></script>
,因此请求的数据即是要执行的脚本。当你返回时候,意思要执行
jsonp
这个函数所以如果没有定义该函数,会
Error