我的JavaScript是否有任何问题,应该通过Web API(在Azure上)返回JSON

Is there anything wrong with my JavaScript that should return JSON via a Web API (on Azure)

本文关键字:API Web Azure JSON 返回 是否 JavaScript 任何 问题 我的      更新时间:2023-09-26

我是JavaScript/Jquery的新手,我的第一个"现实世界"应用程序有问题。对于这个应用程序,我需要使用Web API从我的Azure网站下载JSON。这是我的代码:

    function returnClientJSON() {
    var value = "novi";
    var valueType = "city";
    //$.getJSON("http://myazuresite.azurewebsites.net/api/location/?q=" + valueType & "&v=" + value,
    $.getJSON("http://myazuresite.azurewebsites.net/api/location/?q=city&v=novi",
    function (data) {
        $.each(data, function (key, val) {
            var str = val.Name + ': ' + val.City;
            $('<li/>', { text: str })
            .appendTo($('#clients'));
        });
    });
}

我知道API是有效的,因为我可以通过直接访问URL获得结果。使用Firebug(我使用它的经验有限,所以我可能会错过一些东西),我可以告诉服务器没有返回任何结果或任何错误,这将给我一个提示什么是错误的。我也通过谷歌知道这可能是CORS的问题,我对此一无所知。

所以我要进一步调查CORS,但我想问是否有什么明显的错误与我的代码上面?

原来我遇到的问题是由域名交叉引起的,我找到了这篇文章,"ASP中的CORS支持"。. NET Web api - RC版本",作者Carlos Figueira。我下载了示例代码,将包含的CorsHandler添加到我的项目中,将处理程序添加到Global。