如何使用 json-server 保存时间戳?

How do I save a timestamp using json-server?

我一直在使用 json-server 和一个简单的 db.json 来模拟我的 REST API。

但是,我现在有一个需求,就是在后端的每个 POST 上保存当前日期。

我希望 json-server 在每个 POST 上生成一个时间戳并将其保存在 db.json 中,这样每次我执行 GET 请求时它都会响应日期该记录已保存。

例如从这里开始:

{
  "posts": [
    {
      "id": 1,
      "title": "json-server",
      "author": "typicode"
    }
  ],
  "comments": [
    {
      "id": 1,
      "body": "some comment",
      "postId": 1
    }
  ]
}

为此:

{
  "posts": [
    {
      "id": 1,
      "title": "json-server",
      "author": "typicode"
    }
  ],
  "comments": [
    {
      "id": 1,
      "body": "some comment",
      "postId": 1,
      "timeSaved": "2020-09-17T09:15:27+00:00"
    }
  ]
}

您可以将 json-server 作为模块与 Express 中间件结合使用:https://github.com/typicode/json-server#module.

他们有一个为 POST 请求保存 createdAt 的示例:

server.use((req, res, next) => {
  if (req.method === 'POST') {
    req.body.createdAt = Date.now()
  }
  // Continue to JSON Server router
  next()
})

或者你可以使用我的 API 服务器(基于 json-server):https://github.com/robinhuy/fake-rest-api-nodejs