【发布时间】:2016-06-28 21:57:53
【问题描述】:
我有一个包装器,它可以捕获承诺的最后结果,对其进行格式化并输出数据:
req.resolve = (promise) => {
return promise.then(() => {
res.json(req.user);
}).catch(Sequelize.ValidationError, err => {
// respond with validation errors
return res.status(422).send(err.errors);
}).catch(err => {
// every other error
return res.status(400).send({ message: err.message });
});
};
在一个观点中,我没有任何承诺,所发生的只是 auth 函数触发器添加 req.user 并触发 done()。
我尝试添加这样的承诺,但没有得到解决。
app.get('/user/me', auth,
(req, res, next) => {
req.resolve(new Promise());
});
【问题讨论】:
-
什么是
req.resolve()不传参返回? -
它不返回任何东西,它向浏览器输出数据。它可以访问 express.js 使用的 req-object 中的一堆数据
-
return new Promise((success) => { success([]); })
标签: javascript node.js