0

私はJavaScript/Jqueryを初めて使用し、最初の「実世界」のアプリケーションで問題が発生しています。このアプリケーションでは、WebAPIを使用してAzureWebサイトから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'));
        });
    });
}

URLに直接アクセスして結果を取得できるため、APIが機能することはわかっています。また、Firebugを使用すると(使用経験が限られているため、何かが足りない可能性があります)、サーバーが何が問題なのかを示唆する結果やエラーを返さないことがわかります。また、これがCORSの問題である可能性があることもGoogle経由で知っていますが、これについては何も知りません。

そこで、CORSをさらに調査しますが、上記のコードに明らかに問題があるかどうかを確認したいと思います。

4

1 に答える 1

0

私が抱えていた問題はドメインの交差によって引き起こされたことが判明しました。CarlosFigueiraによるこの記事「ASP.NETWebAPIでのCORSサポート-RCバージョン」を見つけました。サンプルコードをダウンロードし、含まれているCorsHandlerをプロジェクトに追加し、ハンドラーをGlobal.asaxに追加すると、正常に機能しました。

于 2013-04-03T01:50:28.620 に答える