问题描述
在表单提交成功之后要重定向到/success页面,请求一直pending
代码
import { NextRequest, NextResponse } from "next/server";
function getAnswerInfo(formData: FormData) {
const answerList: any[] = [];
let questionId = "";
formData.forEach((value, key) => {
if (key === "questionId") {
questionId = value as string;
} else {
answerList.push({ componentId: key, value });
}
});
return { questionId, answerList };
}
export async function POST(request: NextRequest) {
const formData = await request.formData();
const answerInfo = getAnswerInfo(formData);
console.log(answerInfo);
try {
// 提交到服务端
// 如果提交成功了
return NextResponse.redirect(new URL("/success", request.url));
} catch (error) {
console.log(error);
}
// return NextResponse.json({ errno: 0, msg: "ok" });
}
问题修复
加个状态码, 301或者303都可以
return NextResponse.redirect(new URL("/success", request.url), 301);