MERN栈在线学习克隆项目Axios 404请求错误排查求助
错误成因及解决方案
核心问题1:自执行函数未触发执行
你的服务端代码仅定义了异步自执行函数,但没有调用它——代码末尾缺少(),导致路由完全没挂载到Express应用上,自然找不到任何接口。
核心问题2:路由前缀路径格式错误
app.use("api", ...)中的路径前缀未以/开头,Express会将其解析为相对路径,和客户端请求的/api/register路径不匹配,直接引发404。正确写法应为/api。
附加检查项
- 确认
./routes目录下的路由文件(比如注册相关文件)正确导出了Express Router,且在文件内定义了POST /register的处理逻辑。 - 确保路由文件内的路径是
/register,不要重复添加/api前缀(已通过app.use('/api', ...)统一挂载)。
修正后的服务端代码示例
(async () => { fs.readdirSync("./routes").map((r) => app.use("/api", require(`./routes/${r}`))) })(); // 末尾添加()执行函数
内容的提问来源于stack exchange,提问作者Abhinav217
相关产品推荐
相关产品推荐

