Nuxt应用登录报错:TypeError: Cannot use 'in' operator搜索'meta.token'
解决Nuxt登录时TypeError: Cannot use 'in' operator to search for 'meta.token'错误
问题根源在于你的Nuxt Auth local策略配置的propertyName与后端返回的token路径不匹配。
你的后端响应里,token实际位于data.token层级,但你在nuxt.config.js中配置的是meta.token,这导致Nuxt Auth无法定位到正确的token字段,从而抛出错误。
修改步骤:
- 打开
nuxt.config.js文件,定位到auth策略的local配置项 - 将
login配置中的propertyName值从'meta.token'修改为'data.token'
修改后的完整配置代码:
auth: { strategies: { local: { endpoints: { login: { url: '/auth/login', method: 'post', propertyName: 'data.token' }, logout: { url: '/auth/logout', method: 'post' }, } } } },
修改完成后重启项目,再次尝试登录即可正常获取后端返回的token。
内容的提问来源于stack exchange,提问作者4ri37ix L
相关产品推荐
相关产品推荐

