【问题标题】:How to override the 4mb API Routes body size limit?如何覆盖 4mb API Routes 正文大小限制?
【发布时间】:2021-12-29 03:04:20
【问题描述】:

我尝试了几种方法来覆盖 API Routes 正文大小限制。

https://nextjs.org/docs/messages/api-routes-body-size-limit

  • 设置自定义服务器(Basic Express 应用程序)
  • 在相关路由上传递 bodyParser sizeLimit 的自定义配置。
export const config = {
  api: {
    bodyParser: {
      sizeLimit: '10mb',
    },
  },
}

我有一些大小超过 7mb 的数据库响应,我希望能够支持这么大的响应。我部署到 AWS 而不是 Vercel,并且我没有使用无服务器功能。

我缺少什么来完成此操作,所以我不会在后端不断收到 exceeds 4MB. This will cause the request to fail in a future version 错误消息?

【问题讨论】:

    标签: next.js


    【解决方案1】:

    这不是因为 Vercel / AWS。不幸的是,这是由 Next.js 设计的。

    来自docs

    为什么会发生此错误

    API 路由旨在快速响应,而不是支持响应大量数据。响应的最大大小为 4 MB。

    可能的修复方法

    将您的 API 路由响应限制在 4 MB 以下。如果您需要支持向客户端发送大文件,则应考虑为这些资产使用专用媒体主机。有关建议,请参阅下面的链接。

    所以基本上你被 4 兆字节的限制所困,即使你设置了它。

    你可以试试这个tip to avoid the 5 MB limit

    我的一个提示,如果你真的需要支持这么大的响应,也许你可以尝试构建自己的 API。 Express 是个不错的选择。您可以对自己的后端架构进行细粒度控制。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-11
      • 2020-06-03
      • 2022-09-28
      • 2021-04-21
      • 1970-01-01
      相关资源
      最近更新 更多