使用json-server访问特定URI返回404的问题求助
问题分析与解决方案
核心原因
你请求的路径/en-news/threads/latest既没有在routes.json中配置映射规则,也不存在对应的db集合键名,因此json-server返回404。当前你的路由仅配置了/api/board/en-news/threads/latest对应board-en-news-threads-latest集合,直接访问/en-news/threads/latest时无匹配规则。
解决方法
方法1:使用已配置的正确路径
直接请求路由中定义好的api路径:
curl -i http://localhost:4000/api/board/en-news/threads/latest
该路径会匹配routes.json中的规则,返回board-en-news-threads-latest集合的数据。
方法2:添加新路由映射
如果需要支持/en-news/threads/latest这个路径,修改routes.json添加对应规则:
{ "/api/*": "/$1", "/api/en-boards": "en-boards", "/api/board/en-news/threads/latest": "board-en-news-threads-latest", "/en-news/threads/latest": "board-en-news-threads-latest" }
修改后重启json-server,再执行curl -i http://localhost:4000/en-news/threads/latest即可正常返回数据。
额外提示
如果后续需要根据en-boards中的uri字段(如/board/en-news)关联线程数据,建议统一路径格式,避免规则不一致,降低维护成本。
内容的提问来源于stack exchange,提问作者ykmr
相关产品推荐
相关产品推荐

