Next.js 14中Server Action调用redirect()触发ReadableStream已关闭错误
Next.js 14 Server Action登录跳转失败问题
我使用Next.js 14,通过Server Action实现登录功能,对应的函数代码如下:
export async function login(prevState: any, formData: FormData) { const result = loginSchema.safeParse(Object.fromEntries(formData)); if (!result.success) { return { errors: result.error.flatten().fieldErrors, }; } const { username, password } = result.data; if (username !== testUser.username || password !== testUser.password) { return { errors: { username: ["用户名或密码无效。"], }, }; } await createSession(testUser.id); redirect("/dashboard"); }
该函数的表单验证功能正常,但执行redirect("/dashboard")时无法完成跳转,服务器控制台报错如下:
⨯ 内部错误: TypeError [ERR_INVALID_STATE]: 无效状态: ReadableStream已关闭 在 ReadableByteStreamController.enqueue (node:internal/webstreams/readablestream:1175:13)
内容的提问来源于stack exchange,提问作者Noob101
相关产品推荐
相关产品推荐

