工作的一个RESTful API,因此当我访问这在我的浏览器在96.126.111.211/getLeaderBoardNode.js的快递jQuery的Ajax请求不工作
它工作正常,使我能蒙戈数据库中的JSON数据。
虽然当我尝试这样http://jsfiddle.net/yVQ5T/我得到一个JSONP错误
Error: jQuery171037622810900211334_1363808084624 was not called
这里一个jQuery Ajax请求是在服务器端的代码
getLeaderBoard(req, res)
{
this.db.collection(this.settings.userTable, function(err, collection) => {
collection.find().toArray(function(err, items) {
res.writeHead(200, {'Content-Type': 'application/javascript'});
res.write(JSON.stringify(items));
res.end();
});
});
}
您是否使用快速使用还是我只是拉从标题和标签?如果你使用Express,你应该使用他们的高级响应函数,比如'res.json(items)',或者更具体地说'res.jsonp(items)',它可以解决你的问题。除非您有特殊情况,否则无需手动将数据写入Express的响应(或结束)。此外,Node.js中的良好做法是显式返回每个函数中的最终语句,以确保当您希望离开它时保留它。 – 2013-03-20 19:50:59