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

Posted

技术标签:

【中文标题】如何使用 json-server |为本地 db.json 获取 404【英文标题】:How to use json-server | Getting 404 for local db.json 【发布时间】:2021-12-14 23:21:18 【问题描述】:

我很确定一切都正确。我正在使用这些版本:

"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-serverjson-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

工作得很好。请帮忙。

【问题讨论】:

【参考方案1】:

根据要求将我自己的评论复制到答案中:

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

【讨论】:

你能不能也看看这个:***.com/questions/69777098/…【参考方案2】:

根据@user2740650 你说 db.json 在 src 文件夹中。重要的是它在您启动服务器的同一个文件夹中。听起来它在其他地方创建了一个默认的 db.json 并且正在使用它。 第二种情况 将您的 db.json 文件移动到 Public 文件夹并通过以下方式调用它: axios.get('db.json') .then(//...)

【讨论】:

你能不能也看看这个:***.com/questions/69777098/… 未找到#deadlink 是的,我删除了这个问题,因为我重新启动了服务器并且它开始按预期工作。感谢您的兴趣:-)【参考方案3】:

其余端点工作的原因是,当您安装 json-sever 时,它会在您的公共文件夹中添加一个默认的 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"
    
  

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

【讨论】:

以上是关于如何使用 json-server |为本地 db.json 获取 404的主要内容,如果未能解决你的问题,请参考以下文章

将 json-server 重置为 db.json 的内容

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

当用作模块时,如何让 json-server 延迟响应?

如何使用 json-server 部署 reactJS 应用程序

vue 调用本地json配置

带有 express/db.json 的 json-server 未反映更改