Как вы возвращаете JSON-ответ на маршрут после запроса в MySql? - PullRequest
0 голосов
/ 01 ноября 2018

Я использую эластичный поиск, узел и MySql. Мне нужно синхронизировать некоторые пользовательские данные из MySql вasticsearch. Мой маршрут настроен как:

router.post("/register_user", (req, res, next) => {
    mysql.register(req.body).then((result) => {
        elastic.createUser(...);
    });
});

Когда пользователь отправляет сообщения на этот маршрут, он успешно создает строку в mysql:

const mysql = require("mysql");
const connection = mysql.createConnection("...");
connection.connect();

exports.register = (req, res) => {
    const user = { name: req.name };
    connection.query('INSERT INTO user SET ?', user, (err, rows) => {
        // stuff for errors
        // ...
        connection.end();
        // what do I do here?
    });
});

Я пытался:

// I got an error regarding "status of undefined"
res.status(200).json({ id: rows.insertId });

// I got something about "then of undefined" in the router
return { id: rows.insertId };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...