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

Express设置GET路由报GET not supported错误 如何获取fromDate等路径参数

修复方案

你遇到的问题由两个错误共同导致,按以下步骤修改即可:

1. 修正路由定义

你当前的路由路径中fromDate/toDate是静态路径段,只有请求地址完全匹配这段字符串才会命中路由,实际请求中的日期值无法匹配,所以才会返回GET not supported的报错。
需要将两个日期字段声明为动态路径参数,添加:前缀:

app.get( `${base}/:id/statements/:fromDate/:toDate`, doGetStatement( app )) ;

2. 修正参数取值逻辑

首先,GET请求默认不会携带请求体,你从req.body中无法拿到路径中的参数;其次这两个参数是路径参数,应该从req.params对象中取值,修改doGetStatement中的代码:

const id = req.params.id ;
const from = req.params.fromDate ;
const to = req.params.toDate ;

可选优化:参数格式校验

可以新增日期格式校验,避免非法格式传入导致后续逻辑报错:

// 校验YYYY-MM-DD格式的正则
const dateRule = /^\d{4}-\d{2}-\d{2}$/
if (!dateRule.test(from) || !dateRule.test(to)) {
  return res.status(400).json({ msg: '日期格式错误,请使用YYYY-MM-DD格式' })
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 21:15:03