Javascript 如何使用Axios等待GET请求完成

Javascript 如何使用Axios等待GET请求完成,javascript,node.js,get-request,Javascript,Node.js,Get Request,我正在使用Nodejs和express制作一个网络记事本,所有数据都将保存在MongoDB中。我想通过RESTAPI与Axion进行HTTP请求来获取数据 当我发送GET请求时,程序不会等待JSON文件,而是继续,因此,它会导出一个未定义的文件,其中显示的站点没有数据 在GET请求之后使用console.log,我获得了所需的所有数据,但为时已晚 app.js: const express = require('express'); const chalk = require('chalk');

我正在使用Nodejs和express制作一个网络记事本,所有数据都将保存在MongoDB中。我想通过RESTAPI与Axion进行HTTP请求来获取数据

当我发送GET请求时,程序不会等待JSON文件,而是继续,因此,它会导出一个未定义的文件,其中显示的站点没有数据

在GET请求之后使用console.log,我获得了所需的所有数据,但为时已晚

app.js:

const express = require('express');
const chalk = require('chalk');
const debug = require('debug')('app');
const bodyParser = require('body-parser');
const mongoose = require('mongoose');
const cors = require('cors');
require('dotenv/config')

const app = express();
const port = 3000;

app.use(cors());
app.use(express.static('views'));
app.use(bodyParser.json());

app.set('views', './views');
app.set('view engine', 'ejs');

const postsRoute = require('./routes/posts');
// Here i import the data from the GET request
const getData = require('./routes/router');

app.use('/posts', postsRoute);

// The outcome of this log is; Promise {<pending>}
console.log(getData);

app.get('/', (req, res) => {
    res.render(
        'index',
        {
// Here i want to send the Data to the ejs file
            getData,
            title: 'Notepad'
        });
});

// Connect to DB
mongoose.connect(
    process.env.DB_CONNECTION,
    {useUnifiedTopology: true, useNewUrlParser: true, useCreateIndex: true, useFindAndModify: false}, () =>
        debug('Connected correctly to MongoDB')
);

app.listen(port, () => {
    debug(`Listening on port ${chalk.green(port)}`);
});
获取请求:

router.get('/', async (req, res) => {
    try {
        const posts = await post.find();
        res.json(posts);
    } catch (err) {
        res.json({message: err})
    }
});

您的router.js文件导出一个承诺。要从承诺中获取数据,可以调用then()-或等待它。怎么搞混了?该死!这就解释了。。。必须在app.js文件中调用then()。对不起,我对这个话题还是很陌生。。谢谢你!
router.get('/', async (req, res) => {
    try {
        const posts = await post.find();
        res.json(posts);
    } catch (err) {
        res.json({message: err})
    }
});