You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React项目安装auth0-js后控制台报'Uncaught SyntaxError: Unexpected token <'错误

解决React项目中auth0-js加载时的Unexpected token <错误

这个错误Uncaught SyntaxError: Unexpected token <出现在auth0.js:1,本质原因是浏览器请求auth0-js相关文件时,服务器返回的不是JavaScript代码,而是HTML内容(比如404错误页面、项目的index.html)。当浏览器尝试把HTML解析成JS时,第一个<标签就会触发语法错误。结合你提到API响应也异常,大概率是前端认证逻辑因为auth0加载失败无法正常工作,导致请求不符合API要求,进而返回非JSON的异常响应。

下面是几个针对性的排查和解决步骤:

  • 检查auth0-js的引入方式是否正确
    确认你是通过npm/yarn安装后,使用标准的模块引入:

    import auth0 from 'auth0-js';
    

    不要错误地引用本地文件路径(比如./auth0.js),这会让浏览器去请求不存在的本地文件,最终返回HTML fallback页面。

  • 验证依赖安装完整性
    有时候依赖安装可能出问题,执行以下步骤重置依赖:

    1. 删除项目根目录的node_modules文件夹和package-lock.json(或yarn.lock)
    2. 重新执行npm install(或yarn install)
    3. 重启开发服务器
  • 排查打包/服务器配置问题
    如果是使用自定义的webpack配置或后端服务器:

    • 对于webpack,确保配置了正确的resolve规则,能正确解析node_modules中的模块,不会把auth0-js误解析成其他资源。
    • 对于后端服务器(比如Express),如果是SPA应用,检查路由 fallback配置(比如app.get('*', (req, res) => res.sendFile(path.join(__dirname, 'build', 'index.html'))))是否覆盖了静态资源请求。确保静态资源目录(比如build/static)被正确映射,让服务器能正确返回auth0-js的JS文件,而不是返回index.html。
  • 清理浏览器缓存
    浏览器可能缓存了错误的响应,打开开发者工具(F12),在网络面板勾选"禁用缓存",然后刷新页面重新加载资源。

解决完auth0-js的加载问题后,再用Postman测试API——如果前端的认证逻辑恢复正常,API应该能返回正确的JSON响应了。

内容的提问来源于stack exchange,提问作者nick.cook

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:59:19