json-server请求单个用户数据返回空数组问题求助
解决json-server单用户请求在Thunder Client返回空数组的问题
可能原因与修复步骤
1. 修正请求URL的末尾斜杠问题
- 你的服务器基础地址带了末尾斜杠
http://localhost:4000/users/,拼接ID后可能变成http://localhost:4000/users//1(双斜杠),导致json-server路由匹配失败。 - 直接在Thunder Client中使用
http://localhost:4000/users/1发起请求,避免基础地址的末尾斜杠与ID拼接产生双斜杠。
2. 清除Thunder Client的请求缓存
- Thunder Client可能缓存了之前错误的空数组响应,导致新请求无法获取正确数据。
- 操作:点击请求右上角的刷新按钮强制重新请求,或关闭并重启Thunder Client插件后重试。
3. 验证users.json的数据格式
- 确保你的
users.json符合json-server的要求:根节点为对象,包含users数组,且存在id为1的用户,示例格式如下:{ "users": [ { "id": 1, "name": "张三", "email": "zhangsan@example.com" } ] } - 若json文件直接是数组(而非包含数组的对象),可能导致单条请求解析异常。
4. 检查Thunder Client的请求配置
- 确认使用
GET请求方法,且未添加干扰性请求头(比如错误设置Content-Type)。GET请求无需额外设置Content-Type,保持默认即可。
5. 重启json-server服务
- 偶尔服务启动时数据加载异常,重启服务可解决:
- 按
Ctrl+C停止当前服务 - 重新执行
npm run server启动服务,再用Thunder Client测试单用户请求。
- 按
内容的提问来源于stack exchange,提问作者ArtS
相关产品推荐
相关产品推荐

