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

Next.js 13实验性路由API中GET请求的TypeScript类型声明

解决Next.js 13实验性路由API GET处理器避免any类型的问题

直接用以下方式替换any类型:

  1. 定义路由参数类型:根据你的路由结构,创建接口描述params的结构
  2. 指定正确的request类型:使用Web标准的Request类型,TypeScript默认支持该类型

修改后的代码:

// 匹配路由参数结构的接口
interface RouteParams {
  id: string;
}

export async function GET(request: Request, { params }: { params: RouteParams }) {
  function getRandomInt(min: number, max: number) {
    min = Math.ceil(min);
    max = Math.floor(max);
    return Math.floor(Math.random() * (max - min) + min); // 最大值不包含,最小值包含
  }

  const youTubeId = params.id;
  // 后续业务逻辑...
}

补充说明

  • HttpWebResponse是.NET生态的类型,和Next.js(Node.js/浏览器环境)完全不兼容,所以用它没用
  • 如果路由有其他参数,比如app/[category]/[id]/route.ts,只需扩展RouteParams接口即可:
    interface RouteParams {
      category: string;
      id: string;
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 14:42:02