0
設置響應,當我使用的承諾不確定的。我的代碼看起來是這樣的:快速響應的承諾
app.get("/api/assignment/user", getUserByUsername);
function getUserByUsername (req, res) {
var username = req.query.username;
model.findUserByUsername(username)
.then(defaultJsonResponse(res), notFound(res));
}
function defaultJsonResponse(res) {
return function(nObj) { defaultJsonResponse(nObj, res)};
}
function defaultJsonResponse(njson, res) {
if(njson) res.json(njson);
else notFound(res, "error");
}
當我運行getUserByUsername
方法,我得到TypeError: Cannot read property 'json' of undefined
。 我無法理解爲什麼響應是undefined
defaultJsonResponse(njson, res)
你必須通過一個回調'then',你的函數調用的不是結果。用函數表達式來包裝它們。 – Bergi
爲什麼你有函數defaultJsonResponse定義兩次?在if/else語句之後,您還缺少括號。 – user2263572
@ user2263572,那裏不需要括號。你確定你收到迴應嗎?如果是的話,你能提供JSON嗎? – Filipe