What is wrong in the following Next.js API route?

clock icon

Asked 1 year ago

message icon

1

eye icon

8

1export default function handler(req, res) {
2 if (req.method === 'POST') {
3 const data = JSON.parse(req.body);
4 res.status(200).json({ message: 'Received', data });
5 }
6}
1export default function handler(req, res) {
2 if (req.method === 'POST') {
3 const data = JSON.parse(req.body);
4 res.status(200).json({ message: 'Received', data });
5 }
6}

1 Answer

req.body is already parsed in Next.js by default (in recent versions), and also, TypeScript types are missing.

1import { NextApiRequest, NextApiResponse } from 'next';
2
3export default function handler(req: NextApiRequest, res: NextApiResponse) {
4 if (req.method === 'POST') {
5 const data = req.body; // already parsed
6 res.status(200).json({ message: 'Received', data });
7 }
8}
1import { NextApiRequest, NextApiResponse } from 'next';
2
3export default function handler(req: NextApiRequest, res: NextApiResponse) {
4 if (req.method === 'POST') {
5 const data = req.body; // already parsed
6 res.status(200).json({ message: 'Received', data });
7 }
8}

1

Write your answer here

Top Questions