【问题标题】:Cannot use MongoDB in an app deployed in Vercel无法在部署在 Vercel 中的应用程序中使用 MongoDB
【发布时间】:2023-02-18 01:34:28
【问题描述】:

我有一个刚刚使用 Vercel 部署的 NestJS 应用程序。 使用 Node 16+、MongoDB 4.12.1、Mongoose 6.8.0

出于某种原因,我的所有请求都会在 10 秒后超时(这是 Vercel 免费套餐的最大值)。 经过我的调查,我没有发现没有调用 MongoDB 的端点超时,所以我认为这就是问题所在。 当我在本地运行我的应用程序时,它就像一个魅力,甚至使用 vercel-admin-user 凭据。

我为集成做了以下工作:

  1. 按照他们的指南将 MongoDB Atlas 与 Vercel 集成:link
  2. 在 MongoDB 集群中创建了一个具有读写权限的 vercel-admin-user
  3. 允许所有网络访问我的集群(0.0.0.0 和确切的 Vercel IP 地址)

【问题讨论】:

  • 允许所有网络访问我的集群排除故障是可以的,但是为了所有遭受数据泄露的用户,请不要在生产环境中这样做。对于超时,确实没有足够的细节来建议什么。你从字面上说“我做得很好,但它不起作用”。显然有问题,并不一定与 mongodb 连接有关,正如您所暗示的那样。请给我们一些推测。
  • 您超时的原因是 mongodb 无法连接。检查你的环境变量是否正确。更改环境变量后,您必须单击“重新部署”。

标签: mongodb mongoose nestjs timeout vercel


【解决方案1】:

转到 mongodb 帐户。然后去数据库用户。在这里你会看到 vercel-admin-user。然后编辑用户为其设置新密码。然后转到您的项目源代码更改 mongodb 通行证和用户。

【讨论】:

    猜你喜欢
    • 2018-09-18
    • 1970-01-01
    • 1970-01-01
    • 2021-08-19
    • 2018-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-26
    相关资源
    最近更新 更多