serverActions
用于配置 Next.js 应用程序中 Server Actions 行为的选项。
allowedOrigins
一个额外的安全来源域名列表,从这些域名可以调用 Server Actions。Next.js 会比较 Server Action 请求的来源与主机域名,确保它们匹配以防止 CSRF 攻击。如果未提供,则只允许相同来源。
next.config.js
/** @type {import('next').NextConfig} */
module.exports = {
experimental: {
serverActions: {
allowedOrigins: ["my-proxy.com", "*.my-proxy.com"],
},
},
};
bodySizeLimit
默认情况下,发送到 Server Action 的请求正文的最大大小为 1MB,以防止在解析大量数据时消耗过多的服务器资源,以及潜在的 DDoS 攻击。
然而,你可以使用 serverActions.bodySizeLimit
选项来配置此限制。它可以接受字节数或任何受 bytes 支持的字符串格式,例如 1000
、'500kb'
或 '3mb'
。
next.config.js
/** @type {import('next').NextConfig} */
module.exports = {
experimental: {
serverActions: {
bodySizeLimit: "2mb",
},
},
};
启用 Server Actions(v13)
Server Actions 在 Next.js 14 中成为稳定功能,并默认启用。然而,如果你使用的是早期版本的 Next.js,你可以通过将 experimental.serverActions
设置为 true
来启用它们。
next.config.js
/** @type {import('next').NextConfig} */
const config = {
experimental: {
serverActions: true,
},
};
module.exports = config;