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

如何在Next.js 13.2新Route Handlers中传递参数调用Twelve Data API?

解决Next.js API获取Twelve Data股票历史数据的参数传递问题

核心问题梳理

  • GET请求参数获取方式错误:你当前用request.body读取参数,但GET请求的参数是存放在URL查询字符串中的,并非请求体里。
  • 测试URL格式错误:你输入的测试地址里endDate参数缺失键名,正确写法应该是endDate=2021-01-01,而非直接写2021-01-01。

修正后的代码

export async function GET(request) {
  // 从URL查询字符串中提取参数
  const { searchParams } = new URL(request.url);
  const symbol = searchParams.get('symbol');
  const startDate = searchParams.get('startDate');
  const endDate = searchParams.get('endDate');

  const apiKey = process.env.TWELVE_DATA_API_KEY;
  const url = `https://api.twelvedata.com/time_series?symbol=${symbol}&interval=1day&start_date=${startDate}&end_date=${endDate}&apikey=${apiKey}`;
  
  const res = await fetch(url);
  const data = await res.json();
  
  return Response.json({ data });
}

正确的测试URL

http://localhost:3000/api/stock-info?symbol=AAPL&startDate=2020-01-01&endDate=2021-01-01

额外建议

可以添加参数校验逻辑,比如检查symbol、startDate、endDate是否存在,避免因参数缺失导致Twelve Data API请求失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 14:29:59