我的 JSON 来自 Typicode 的服务器在 ReactJS 中更新数据库

My JSON Server from Typicode updating database in ReactJS

我最近一直在尝试使用来自 typicode 的 json 服务器来处理伪造的 API。使用假 APIs 对我来说很新,所以我的问题听起来有点奇怪。

我是否理解这个假 API 服务器的概念,我可以在 ReactJS 中使用 post 请求更新数据库?还是数据库永远不会通过 post 请求更改,而我只在控制台日志中得到结果?

特别是我正在尝试 post 通过 post 请求将表单中的数据发送到我的 json 服务器。

到目前为止谢谢!

我用来 post 数据的代码:

axios.post(`my-url`, { user })
                    .then(res => {
                      console.log(res);
                      console.log(res.data);
                    })
                        }

我假设您正在使用 json-server 软件包并使用服务器。在这种情况下,您发出的成功 POST 请求将保存在您提供给服务器的文件中,如果您不提供任何特定文件,则保存在默认文件中。

如果你想使用 json-server 并使更改持久化,你可以使用它的 npm 包:

npm install -g json-server

然后,在您的项目目录中创建一个 db.json 文件并提供您要使用的数据结构:

{
  "posts": [
    { "id": 1, "title": "json-server", "author": "typicode" }
  ]
}

如果您不提供 db.json 文件,它会在您启动服务器时自动创建。所以,这取决于你。

然后,您应该启动服务器:

json-server db.json

服务器会在端口3000,如果这个端口有另一个应用程序运行,你可以在启动时指定端口:

json-server db.json -p 3001

现在,您可以向 http://localhost:3001/posts 提出请求。只需检查 its documentation 有关请求。

您不能向此服务器发出 post 请求 https://my-json-server.typicode.com/${github-username}/${github-repo}/${event},

截至本回复时,您只能发出 get 请求,我建议您在本地计算机上使用 JSON-server。

在项目文件夹中创建一个 db.json 文件,

示例将类似的内容添加到文件

{
  "events": [
    {
      "id": 123,
      "category": "animal welfare",
      "date": "January 28, 2022",
      "time": "12:00",
    },
    {
      "id": 456,
      "category": "nature",
      "date": "January 30, 2022",
      "time": "11:00",
    },
}

运行 npm install -g json-server 和 json-server --watch db.json 提供发出请求所需的 baseUrl