You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用json-server加载自定义JSON文件遇异常,预期资源URL不符求助

解决json-server无法识别自定义JSON文件的问题

第一步:排查文件存在性问题

出现Oops, abcd.json doesn't seem to exist提示,优先确认以下两点:

  • 在CMD中执行dir命令,查看当前目录下的文件列表,确认abcd.json确实存在,检查拼写(比如是否写成abdc.json)、大小写(虽然Windows不区分,但避免不必要的问题)。
  • 检查文件后缀是否被系统隐藏:Windows默认会隐藏已知文件类型的后缀,可能你看到的"abcd.json"实际是"abcd.json.txt"。解决方法:打开文件夹选项,勾选「显示隐藏的文件、文件夹和驱动器」,同时取消勾选「隐藏已知文件类型的扩展名」,再确认文件名。

第二步:正确访问自定义JSON的API端点

如果文件确实存在,执行命令后仍未出现/abcd端点,是因为json-server的路由规则:

  • 若你的abcd.json顶级结构是对象,且包含abcd键,比如:
    {
      "abcd": [
        {"id": 1, "content": "测试数据"}
      ]
    }
    
    此时访问http://localhost:3000/abcd就能获取对应数据。
  • 若你的abcd.json顶级结构是数组,比如:
    [
      {"id": 1, "content": "测试数据"}
    ]
    
    json-server会默认把数组放到/db端点下。如果想通过/abcd访问,需要修改JSON结构为对象包裹的形式,或者创建路由配置文件(比如routes.json),内容如下:
    {
      "/abcd/*": "/$1"
    }
    
    然后执行命令:json-server --watch abcd.json --routes routes.json,即可通过http://localhost:3000/abcd访问数组数据。

第三步:验证命令执行路径

确保你在CMD中导航的目录确实是abcd.json所在的目录,可以通过cd命令切换目录,比如文件在D:\api-test下,就执行cd D:\api-test,再执行json-server --watch abcd.json。

内容的提问来源于stack exchange,提问作者Sarvesh Shriyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 23:42:13