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

Node.js Express路由报错:cannot GET /myblog 求助

解决cannot GET /myblog错误及博客数据获取问题

核心问题分析

你定义的路由是/myblog/:e_mail,这意味着必须在URL后附带邮箱参数(比如/myblog/test@example.com)才能匹配到该路由。直接访问/myblog时,没有对应的路由处理逻辑,所以返回cannot GET /myblog错误。

具体解决方案

  • 补充无参数路由处理:如果需要支持访问/myblog的场景,添加单独的GET路由:
    app.get("/myblog", (req, res) => {
      // 可根据需求跳转登录页,或提示用户提供邮箱参数
      res.render("error", { errorMessage: "请提供邮箱参数,例如:/myblog/your@email.com" });
    });
    
  • 确保访问URL格式正确:访问时必须携带邮箱参数,示例格式:
    http://your-domain.com/myblog/user@example.com
    
  • 排查数据库查询问题:
    • 检查User模型中email字段的存储格式,若需忽略大小写查询,可修改查询语句:
      const user = await User.findOne({ email: new RegExp(`^${requestedEmail}$`, 'i') });
      
    • 确认数据库中对应用户文档存在selfBlog字段,且该字段包含title和content属性
  • 检查路由顺序:确保带参数的/myblog/:e_mail路由放在通用路由(如app.get("*", ...))之前,避免被覆盖。

内容的提问来源于stack exchange,提问作者shashank mishra

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 21:27:10