ObjectId, преобразующий в строки в api, nodejs в реагировать - PullRequest
0 голосов
/ 22 сентября 2018

У меня есть простой API, который отправляет данные в ответе

Food.aggregate([{
    $match: {
        res_id: restaurant._id
    }
}, {
    $group: {
        _id: "$category",
        foods: {
            $push: "$$ROOT"
        }
    }
}], function(err, foods) {

    if (err)
        res.json({
            error: "error"
        });
    else
        res.json(foods);

});

Однако, когда я читаю данные, используя axios в моем приложении React, objectIds преобразуется в строки в моемfront end React app.

Теперь я не смог найти ни одного ресурса по типу данных, который можно передавать по HTTP или любым другим ограничениям.Может кто-нибудь указать мне на какой-либо ресурс или сказать мне, если это так работает HTTP.

1 Ответ

0 голосов
/ 22 сентября 2018

JSON.stringify() будет рекурсивно вызывать метод toJSON (), чтобы получить JSON-безопасное строковое представление объекта, который вам нужно передать по HTTP с вашего сервера во внешнее приложение во время сериализации в javascript.

ObjectID будетпреобразовать в 24-байтовую шестнадцатеричную строку во время сериализации: ObjectID.prototype.toJSON

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...