如何使用json-server |为本地 db.json 获取 404

How to use json-server | Getting 404 for local db.json

我很确定每件事都做对了。我正在使用这些版本:

"axios": "^0.24.0",
"json-server": "^0.17.0",

我已经关注了官方文档。我在根文件夹中 db.json

{
"users": [
    {
      "ID": 1,
      "Username": "mike",
      "Password": "User1Password"
    },
    {
      "ID": 2,
      "Username": "robert",
      "Password": "User2Password"
    }
  ]
}

我 运行 json-server 使用此命令: json-server --watch db.json --port 4000

每当我点击 http://localhost:4000/users 时,我都会得到这个:

  \{^_^}/ hi!

  Loading db.json
  Done

  Resources
  http://localhost:4000/posts
  http://localhost:4000/comments
  http://localhost:4000/profile

  Home
  http://localhost:4000

  Type s + enter at any time to create a snapshot of the database
  Watching...

  GET /users 404 4.800 ms - 2

但其余的端点如下:

http://localhost:4000/posts
http://localhost:4000/comments
http://localhost:4000/profile

工作得非常好。请帮忙

根据@user2740650
你说 db.json 在 src 文件夹中。重要的是它位于启动服务器的同一文件夹中。听起来它在其他地方创建了一个默认 db.json 并正在使用它。

第二种情况
将您的 db.json 文件移动到 Public 文件夹并通过以下方式调用它: axios.get('db.json') .then(//...)

正在按要求将我自己的评论复制到答案中:

您说 db.jsonsrc 文件夹中。重要的是它位于启动服务器的同一文件夹中。听起来它在其他地方创建了一个默认 db.json 并且正在使用它。

其余端点工作的原因是因为当您安装 json-服务器时,它会在您的 public 文件夹中添加一个默认的 db.json,具有以下端点:

http://localhost:4000/posts
http://localhost:4000/comments
http://localhost:4000/profile

默认 db.json 看起来像

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

您可以根据您的情况删除此数据并添加用户集合。