我正在嘗試使用node.js,express,monk和mongodb來創建一個簡單的web服務,它根據URL中的參數從mongodb返回結果。我想給調用添加jsonp支持。該服務將被稱爲例如:JSONP支持node.js和mongo
localhost:3000/database/collection/get?param1=Steve¶m2=Frank&callback=foo
app.js
var mongo_address = 'localhost:27017/database';
var db = monk(mongo_address);
app.get('/:coll/get', routes.handle(db);
路線/ index.js
exports.handle = function(db) {
return function(req, res) {
// Send request
db.get(req.params.coll).find(req.query, {fields:{_id:0}}, function(e,docs) {
if (e) throw e;
res.jsonp(docs)
});
};
}
當我使用內置的JSONP支持,res.jsonp,它將回調參數發送給mongo並返回一個空列表。我試着在查詢過程中剝離回調參數,然後手動將其添加回結果中,但沒有多少運氣。我覺得我錯過了簡單的事情。任何幫助,將不勝感激。