1

私はjavascriptの学習を開始し、以下のコードを書きました。

var dataFetch = $.getJSON("http://localhost:12345/stream", function (Data) {
    alert(Data);
    $.each( Data, function () {
        alert(this);
        $("<li>").html(this.rss).prependTo(tweetList);
    });
});

dataFetch.done(function () {
    alert("done");
});
dataFetch.fail(function () {
    alert("fail");
});

http://localhost:12345/streamブラウザにリンクを配置すると、次のようになります。

{"rss":{"version":"2.0","channel":{"title":"Dave Winer","link":"http://scripting.com/","description":"Dave Winer&apos;s \"Scripting News\" weblog, started in April 1997, bootstrapped the blogging revolution.","language":"en-us","copyright":"Copyright 2012 Scripting News, Inc.","pubDate":"Mon, 08 Oct 2012 04:00:00 GMT","lastBuildDate":"Mon, 08 Oct 2012 18:12:27.... 
........... much more here

しかし、このhtmlファイルを実行すると、警告ダイアログボックスが失敗して失敗します。

JSON.stringify(some_json_object).node.jsサーバーコードからローカルホスト上のデータを送信しています。

エラーは何ですか?

4

1 に答える 1

0

関数の応答ヘッダーに "Access-Control-Allow-Origin" : "*" を入れるとcreateServer、問題が解決しました:

response.writeHead(200, {"Content-Type" : "text/plain",
                         "Access-Control-Allow-Origin" : "*"}); 

これにより、誰もがサーバーのこのエンドポイントにアクセスできます。* の代わりに IP アドレスまたはドメイン名を入力して、特定のクライアントのみがこれにアクセスできるようにすることもできます。

于 2013-08-23T06:37:41.023 に答える