Next-auth遇[CLIENT_FETCH_ERROR]及400错误请求问题求助
解决NextAuth CLIENT_FETCH_ERROR 400 Bad Request问题
错误核心
控制台出现的CLIENT_FETCH_ERROR是因为客户端请求/api/auth/session时,服务端返回了非JSON格式的错误文本(比如"Error: Thi..."),导致JSON解析失败,同时触发了400请求错误。
排查与解决步骤
检查NextAuth配置文件
打开pages/api/auth/[...nextauth].js(或app/api/auth/[...nextauth]/route.js),确认:NEXTAUTH_SECRET环境变量已正确配置,可通过openssl rand -hex 32生成合规值session策略配置正确:若用database策略,数据库连接字符串无误、表结构符合NextAuth要求;若用jwt策略,jwt回调未出现异常- 所有回调函数(如
session、jwt)未抛出未捕获的错误,确保返回值是合法JSON
查看服务端详细日志
启动项目时留意终端输出,当触发/api/auth/session请求时,服务端会打印具体错误原因(比如数据库连接失败、权限不足、代码逻辑错误等),这是定位问题的关键修复API路由的异常处理
在[...nextauth].js/ts中,给异步操作添加try/catch捕获异常,确保服务端返回标准JSON格式的错误响应,而非原始错误文本验证会话有效性
- 清除浏览器Cookie(找到
next-auth.session-token或next-auth.jwt删除),重新登录后测试请求 - 确认登录流程正常,用户能成功创建会话
- 清除浏览器Cookie(找到
内容的提问来源于stack exchange,提问作者mirnes99
相关产品推荐
相关产品推荐

