如何在Node.js中显示异步函数的结果

时间:2018-11-23 08:35:34

标签: javascript node.js express

我是Node的新手,我已经看了一些来自Net的教程。 我的主要问题是如何显示我创建的路线的结果。好吧,我使用控制台获取了正确的数据,但是当我通过浏览器访问它时,它不显示json编码的数据。

这是我的product.js:

1. form data 
2  file content

这是控制台日志结果:http://prntscr.com/llxgk2

以下是邮递员的结果:http://prntscr.com/llxgy3

1 个答案:

答案 0 :(得分:1)

您需要兑现承诺。在您的情况下,可能使用thencatch处理程序:

router.get('/',(req,res)=>{
    products()
    .then(products => {
        res.json(products);
    })
    .catch(error => {
        // ...send error response...
    });
});

请注意,我已使用res.json发送响应。您可能希望将resolve(JSON.stringify(rows))更改为resolve(rows),然后将处理行的内容留给调用方。 (res.json将为您分类。)

您可能还会看到Koa,它是从Express的那些人那里获得的,Express为async的路由功能提供了一流的支持。