ObjectId转换为api中的字符串,nodejs转换为reactjs

时间:2018-09-22 08:07:47

标签: node.js reactjs api http axios

我有一个简单的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);

});

但是,当我在React应用程序中使用axios读取数据时,objectIds会在前端React应用程序中转换为字符串。

现在我找不到可以通过HTTP传递的数据类型类型的任何资源或任何其他限制。谁能指出我任何资源或告诉我这是否是HTTP的工作方式。

1 个答案:

答案 0 :(得分:0)

JSON.stringify()将递归调用toJSON()方法,以获取在javascript进行序列化期间需要通过HTTP从服务器传递到前端应用程序的对象的JSON安全字符串表示形式。

ObjectID将在序列化期间转换为 24字节的十六进制字符串ObjectID.prototype.toJSON