我已在 Vercel 中设置了 NEXTAUTH_URL。我的 NextJS 应用程序在大多数情况下都工作正常,但当我导航到新页面时,调用 next-auth useSession()挂钩时,我会随机收到 500 服务器错误。当我检查 Chrome 中的网络调用时,我可以看到此端点因 500 服务器错误而失败:/api/auth/session
控制台日志显示:
[next-auth][error][client_fetch_error]
https://next-auth.js.org/errors#client_fetch_error session
SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
Run Code Online (Sandbox Code Playgroud)
如果我刷新页面,端点将返回 200 OK 并能够通过以下方式返回会话数据useSession()
对于我的用户来说,这是一次非常糟糕的体验,因为当他们浏览网站时,获取会话会随机失败。我不知道如何解决这个错误,因为它偶尔会发生。
我已确保在 Vercel 上设置 NEXTAUTH_URL 环境变量。获取用户会话有时确实有效。但失败发生的次数比我想象的要多。
我在 next-auth 4.0.6 甚至 4.0.1 的最新版本中遇到了同样的问题,但通过设置 NEXTAUTH_URL env 参数以及 CLIENT_ID 和 SECRET 使其可以与 v4.0.0-beta.4 一起使用。但需要调查最新版本中发生了什么变化。
| 归档时间: |
|
| 查看次数: |
1136 次 |
| 最近记录: |