繁体   English   中英

Ajax Web API调用

[英]Ajax web API call

我试图从Web API获取json数据

http://www.streetdirectory.com/api/?mode=search&act=all&profile=sd_default&q=640724&limit=1&show_additional=0&output=json

使用ajax,我遇到的问题是我收到此错误。

var addresses = new Array();
getAddress();
var myURL = "http://www.streetdirectory.com/api/?mode=search&act=all&profile=sd_default&q=640724&limit=1&show_additional=0&output=json";
function getAddress() { //get addresses from streetdirectory web API
        $.ajax({
            type: "GET",
            url: myURL,
            dataType: "json",
            success: function(response){
                addresses = response;
                alert(response);
            },
            error: function(e) {
                alert('Error: '+e);
                console.log('Error: ' +e);
            }  
        });
}

更新了控制台上的错误。 在此输入图像描述

这似乎是因为我直接访问html。 我已经把它移到我的localhost主机上了。 但它仍然有错误,现在没有任何描述......

在此输入图像描述

在此输入图像描述

将我的函数调用转移到我的函数定义之后,我现在收到此错误。

您应该使用console.log而不是alert。 登录到控制台将允许您调查返回的对象。

由于这是一个ajax调用并且正在调用错误处理程序,因此响应的状态可能不是200。

“如果您正在处理Web项目并希望从不同站点获取数据,有时您会收到此类错误:跨源请求被阻止”*

我想你可以找到一些额外的信息阅读这篇文章跨来源请求被阻止

我使用扩展来删除谷歌浏览器上的阻止。

https://stackoverflow.com/a/28848096/771355

更新:这可能是一个更好的解决方案。 通过使用代理

https://crossorigin.me/

暂无
暂无

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

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