我已经开始学习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
放入broswer时,我得到了:
{"rss":{"version":"2.0","channel":{"title":"Dave Winer","link":"http://scripting.com/","description":"Dave Winer'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服务器代码发送localhost上的数据。
错误是什么?
答案 0 :(得分:0)
在createServer
函数的响应头中放入“Access-Control-Allow-Origin”:“*”解决了问题:
response.writeHead(200, {"Content-Type" : "text/plain",
"Access-Control-Allow-Origin" : "*"});
这允许每个人访问我的服务器的这个端点。也可以将IP地址或域名替换为*以仅允许特定客户端访问它。