使用Axios调用/api/v1/upload接口出现404错误求助
解决POST请求返回404(Cannot POST /api/v1/upload)的建议
检查路由基础路径挂载
确认你的路由实例(Router)是否在主应用中挂载到了/api/v1前缀下,主app文件中应该有类似代码:app.use('/api/v1', Router);如果没配置这个前缀,你的POST请求应该直接指向
/upload而非/api/v1/upload;如果配置了前缀,路由中的/upload才会组合成/api/v1/upload,这是404最常见的原因。验证请求的路径与方法
用开发者工具Network面板或接口测试工具确认:- 请求URL完全匹配
/api/v1/upload,无拼写、大小写或路径分隔符错误 - 请求方法确实为POST,而非误发GET请求
- 请求URL完全匹配
检查路由定义顺序
若Router中存在通配符路由(如Router.all('*', ...)),确保POST/upload的路由定义在这类路由之前,否则会被提前拦截导致404。额外修正:GET路由的参数获取错误
你提供的GET/upload路由中,尝试从req.body获取参数是错误的——GET请求没有请求体,参数应从req.query中获取,示例:Router.get("/upload", async (req, res) => { const { token, userid, id, type, prefix, _, maker, owner, statustxt, statustype, ownerId } = req.query; // 后续逻辑 });
内容的提问来源于stack exchange,提问作者Critical_DevX
相关产品推荐
相关产品推荐

