首页 > 解决方案 > 如何从 Nuxt 3 服务器获取路由参数

问题描述

我有以下 API URL 之一。归根结底,对于我的用例,我必须使用这些 URL 中的哪一个并不重要,但目前都不起作用。

http://localhost:3000/api/track/TRACKID

或者

http://localhost:3000/api/track?id=TRACKID

我将如何获得TRACKIDAPI 代码?以下代码导致undefined.

export default async (req: IncomingMessage, res: ServerResponse) => {
    console.log(req.id);
};

我尝试通过以下方式为第一个 URL 设置文件,但这也不成功。它只是导致URL被http://localhost:3000/api/track/[id]

PROJECT/server/api/track/[id].ts

对于第二个 URL,我使用了以下设置。

PROJECT/server/api/track.ts

标签: typescriptservernuxt.jsnuxtjs3

解决方案


import { useQuery } from 'h3'
export default (req, res) => {
    const { id } = useQuery(req)
}

https://github.com/unjs/h3是将 api 放在一起的服务器。


推荐阅读