mis*_*der 5 jquery mongodb node.js openshift
我有一个 ajax get 请求,如下所示。我正在使用 nodejs express 在 openshift 中向 server.js 发出 GET 请求。但是,我在响应方法中得到 html 内容而不是 json 对象。两个请求都是针对同一个域的。我使用的节点模块是 Moongojs、mongodb 和 bson。
$.ajax({
type: "GET",
url: "http://abc-favspot.rhcloud.com",
contentType: "application/json",
data: JSON.stringify(currLocation),
dataType: "text",
success: function(response){
callback(response);
},
error: function( error ){
console.log( "ERROR:", error );
}
});
Run Code Online (Sandbox Code Playgroud)
我的 server.js 文件有以下代码
self.routes['getData'] = function(req, res){
console.log("gat method");
self.db.collection('location').find().toArray(function(err, names) {
res.header("Content-Type:","application/json");
console.log("success get");
res.send(names);
});
};
Run Code Online (Sandbox Code Playgroud)
res.send(names)不是 JSON,您必须使用JSON.stringify.
尝试在数据库调用之前进行测试以检查其是否有效。
res.send( JSON.stringify( {testData:'test'} ) )
编辑
正如评论中所讨论的,请检查以确保您的请求被路由到您声明的正确路由。
是否console.log("gat method");向终端窗口输出任何内容?