为什么我在部署的站点上获取的数据重复而不是在本地主机上

问题描述

我有 React、MaterialUI、NextJS 和 Mongoose 的项目。

所以问题是在我部署在 vercel 上的站点获取的数组数据的值是重复的,但在 localhost 上它获取了正确数量的数据。

enter image description here

enter image description here

如上图所示,我的 mongoDB 中有 15 个 configField。在 localhost 上获取时,它获取 15。但在部署的 vercel 站点上,它获取 30。productFields 相同。数据库中只有 57 个,但提取的数据返回 151 个。

本地主机上和部署的两个数据库都是同步的并且具有相同的数据。任何人都可以请帮助或知道为什么会发生这种情况?

case 'GET':
      try {
        let data = await settings.findOne({})

        if (!data) {
          data = await settings.create({
            configFields: [],productFields: [],})
        }

        res.status(200).json({ data })
      } catch (error) {
        res.status(400)
      }
      break

仅供参考,前端没有问题。没有任何东西被映射两次。问题在于获取的数据,因为我也在 Postman 上进行了测试,确实收到了 30 个 configFields 而不是正确的 15 个。但为了您的保证,这是我使用 NextJS 的内置同构取消获取的 fetch 语句:

const res = await fetch(`${appUrl}/api/settings`)
const { data: fields } = await res.json()

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)