nextauth客户端取数错误,如何处理?

gc0ot86w  于 2023-03-12  发布在  其他
关注(0)|答案(1)|浏览(158)

我部署了一个nextjs应用程序。我决定在应用程序中包含nextAuth。在localhost中,一切都按预期工作。
但在生产模式下,我得到了一个client_fetch_error
[next-auth][error][CLIENT_FETCH_ERROR] JSON.parse: unexpected character at line 1 column 1 of the JSON data
根据文档,这是一个NEXTAUTH_URL问题。
但是my .env.local有这个键值为的键,在netlify中(我的应用程序部署在那里)
NEXTAUTH_URL=https://mydomain.com.br
在开发过程中,该env值为http://localhost:3000,它工作正常。
我还添加了我的域名到我的谷歌的凭证permition.
我不知道我还能做些什么,我该怎么办?
我期望我的代码作为localhost工作

dwbf0jvd

dwbf0jvd1#

您可能缺少NEXTAUTH_SECRET环境变量

NEXTAUTH_URL=https://mydomain.com.br
NEXTAUTH_SECRET=EXAMPLE // <-- add this

如果问题仍然存在,请将此行添加到[...nextauth]文件中:

secret: process.env.NEXTAUTH_SECRET

网络化

Netlify与Vercel非常相似,您可以部署Next.js项目,而几乎不需要任何额外的工作。
为了在这里正确地设置NextAuth.js,您需要确保在项目设置中添加NEXTAUTH_SECRET环境变量。如果您在项目中使用Essential Next.js Build Plugin,则不需要设置NEXTAUTH_URL环境变量,因为它是作为构建过程的一部分自动设置的。
Netlify还公开了一些system environment variables,您可以从中检查您当前所在的NODE_ENV以及更多内容。
在此之后,只需确保您使用clientId/clientSecret的URL和回调URL正确设置了OAuth提供程序。

相关问题