如何使用json-server将Mock API调用保存到2个地方?

问题描述

我在测试过程中使用json-server模拟我的REST API。

它对于相同数据的POST和GET正常工作。但是,我有一个保存审计跟踪的要求。

这意味着当我执行POST时,它需要保存要由关联的GET检索的数据,但也需要在其他API调用中从GET检索。

如何配置json服务器以将POST数据保存在db.json的2个不同部分中?

解决方法

第一部分是如何运行它。如果使用默认方法运行它,它将仅将POST保存在db.json的相关部分中。

但是,如果您也可以run it with express对其进行自定义。

"scripts": {
  "start": "node index.js","start-dev": "nodemon index.js",},

然后,您可以在index.js中编写javascript,以获取db.json的内容,并将数据作为其他POST的一部分推送到audit部分。 例如

server.post("/data/create",(req,res) => {
  var decodedObj = jwt_decode(req.headers.jwt);
  let db = router.db;

  db.get("audit")
    .push({
      ...req.body,status: "New",user: decodedObj.name,})
    .write();

  const data = db.get("data").value();

  return res.json({
    status: 201,data: data[data.length - 1],});
});

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...