NextJS如何避免NextResponse为JSON结果添加根元素
解决NextJS API返回JSON带result根元素的问题
- 问题根源:你当前代码里的
{result}是ES6对象简写语法,相当于把数组数据包装成了{ result: 你的数组 }结构,所以返回的JSON会自动带上result根字段。 - 解决方案:直接把数组变量作为第一个参数传给
NextResponse.json,不要用对象包裹:
修改前代码:
return NextResponse.json({result}, { status: 200 });
修改后代码:
return NextResponse.json(result, { status: 200 });
这样返回的JSON就是你原始的数组数据,不会有外层的result根元素了。NextResponse.json的第一个参数接受任意合法JSON数据类型(数组、对象、字符串等),直接传入即可。
内容的提问来源于stack exchange,提问作者Don
相关产品推荐
相关产品推荐

