在Next.js接口路由的请求body中添加TypeScript类型,可以通过以下步骤实现:
npm install --save-dev typescript @types/react @types/node
来安装必要的TypeScript依赖。NextApiRequest
和NextApiResponse
类型来定义请求和响应对象的类型。例如,创建一个名为api/example.ts
的文件,并添加以下代码:import { NextApiRequest, NextApiResponse } from 'next';
type Data = {
message: string;
};
export default function handler(req: NextApiRequest, res: NextApiResponse<Data>) {
const { method } = req;
if (method === 'POST') {
// 在这里可以使用req.body来访问请求的body数据
const { name } = req.body;
// 进行类型检查
if (typeof name === 'string') {
const message = `Hello, ${name}!`;
res.status(200).json({ message });
} else {
res.status(400).json({ message: 'Invalid request body' });
}
} else {
res.status(405).json({ message: 'Method Not Allowed' });
}
}
在上面的代码中,我们定义了一个名为Data
的类型,它包含一个message
字段。然后,在handler
函数中,我们使用NextApiRequest
和NextApiResponse
类型来定义请求和响应对象的类型。在POST请求中,我们可以通过req.body
来访问请求的body数据,并进行类型检查。
Content-Type: application/json
。通过以上步骤,你可以在Next.js接口路由的请求body中添加TypeScript类型,并进行类型检查,以确保请求数据的正确性。
领取专属 10元无门槛券
手把手带您无忧上云