AuthRetryableFetchError:使用 Supabase 和 Next.js 的证书链中的自签名证书

问题描述 投票:0回答:1

尝试使用 Next.js 从

getServerSideProps
内的 Supabase 获取用户时,收到以下证书错误:

AuthRetryableFetchError: request to https://[redacted].supabase.co/auth/v1/user failed, reason: self signed certificate in certificate chain
    at [redacted]/node_modules/@supabase/gotrue-js/dist/main/lib/fetch.js:30:16

这是我的代码的简化版本,供参考:

export const getServerSideProps = async ({ req, res }) => {
  const supabase = createServerSupabaseClient({ req, res });
  const { data: { user }, error } = await supabase.auth.getUser();

  if (error) console.error(error);

  return {
    props: {
      user,
    }
  }
};

我已经分别使用

yarn
npm
设置
yarn config set cafile /path/to/certificate/file
npm config set cafile /path/to/certificate/file
来使用正确的证书,但由于某种原因,当 Next.js 尝试从服务器端(Node.js)获取此证书时它失败了,我不确定需要设置什么服务来告诉它证书的设置位置?

那里有很多类似的问题,但我找不到任何专门关于 Next.js 或在 Node.js 中遇到此问题的信息。

任何帮助表示赞赏。

javascript node.js next.js ssl-certificate
1个回答
1
投票

因此,似乎可以通过在

NODE_TLS_REJECT_UNAUTHORIZED=0
中设置
env.local
来解决这个问题,但如果有人知道如何解决该问题而不是避免它,我仍然会感兴趣。

src:https://stackoverflow.com/a/45088585/827129

© www.soinside.com 2019 - 2024. All rights reserved.