繁体   English   中英

getJSON回调未执行

[英]getJSON callback not executing

我需要执行跨域请求,并且getJSON存在问题。

$.getJSON("http://usr:pwd@10.0.1.xx/cgi-bin/remote/request.cgi?m=json&r=grp&fn=getvalue&alias=1/3/51&callback=?",
        function(result) {
            alert('hi');
        });

回调不会触发,即我没有收到警报。 如果将http://链接粘贴到浏览器窗口中,则会得到所需的结果。 它是一个纯数字,在这种情况下为2 我还可以将请求设置为xml,在这种情况下,浏览器窗口中的结果为<value>2</value> 如果有人可以告诉我我的getJSON有什么问题,那将很棒。

致以真诚的感谢和诚挚的问候

您的JSON可能有问题。 这取自文档。

重要提示:从jQuery 1.4开始,如果JSON文件包含语法错误,则请求通常会静默失败。 因此,请避免对JSON数据进行频繁的手动编辑。 JSON是一种数据交换格式,其语法规则比JavaScript的对象文字表示法严格。 例如,以JSON表示的所有字符串,无论它们是属性还是值,都必须用双引号引起来。 有关JSON格式的详细信息,请参见http://json.org/

资源:

http://api.jquery.com/jquery.getjson/

要更好地控制错误处理,请使用$.ajax

您可以在此处http://jsonlint.com/查看JSON。

您尝试呼叫的远程端点似乎不支持JSONP或CORS。 这可以在浏览器的控制台输出中看到,也可以直接粘贴网址并替换为&callback=?来看到&callback=? &callback=somevalue参数。

为了能够进行跨域AJAX调用,远程端点必须支持CORS或JSONP。 如果您希望能够使用AJAX使用它们,则可能应该与该端点的作者联系以启用其中之一。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM