FetchError: unable to verify the first certificate, but I added rejectUnauthorized: false

FetchError: unable to verify the first certificate, but I added rejectUnauthorized: false

我有一个简单的 getServerSideProps() 函数调用外部 API 但抛出此错误:

FetchError: request to https://nginx/api/items failed, reason: unable to verify the first certificate

节点服务器不信任我的自签名证书。

所以我发现这个 Stack Overflow post 可以绕过它(我只在开发中使用它):

所以我将 rejectUnauthorized: false 添加到我的 Axios 调用中,如下所示:

export async function getServerSideProps() {
const res = await fetch('https://nginx/api/items',
   { rejectUnauthorized: false,
     method: 'GET',
   }
)

const { data } = await res.json()
return { props: { data } }
}

但我仍然得到错误。

是否有其他方法可以让我的自签名证书与 Next 一起使用?我找到了一些其他解决方案,但它们适用于 Express,我不知道如何使用 Next.js

为 Node 实现它

rejectUnautorized 属于 HttpAgent:

const https = require('https');
const agent = new https.Agent({
  rejectUnauthorized: false
});
const res = await fetch('https://nginx/api/items', { 
     method: 'GET',
     agent
   }
);