Get 401(Unauthenticated) error after login on laravel sanctum with nuxtjs(在使用nuxtjs登录到laravel避难所后出现401(未经验证)错误)
本文介绍了在使用nuxtjs登录到laravel避难所后出现401(未经验证)错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已安装:
- LAVELL
v 7.30.4
- nuxtjs
v 2.15.7
在我使用nuxtjs身份验证模块登录到laravel禁区后,当nuxt尝试获取用户时,laravel响应401错误(未验证的消息)。
我的网络状态:
我的Cookie状态:
api.php
:
Route::group(['middleware'=>'auth:sanctum'], function (){
Route::get('/user', function (Request $request){
return $request->user();
});
});
nuxt.config.js
:
auth:{
strategies: {
'laravelSanctum': {
provider: 'laravel/sanctum',
url: 'http://localhost:8000',
endpoints:{
login:{
url:'/login'
},
logout:{
url:'/api/logout'
},
},
user:{
property:false
}
},
},
redirect:{
login: '/auth/login',
logout:'/',
home:'/'
},
cookie: {
options: {
sameSite: 'lax'
},
},
},
LoginController.php
:
public function login(Login $request)
{
$user=User::where('phone_number', $request->phone_number)->first();
if (Hash::check($request->password, $user->password)){
$request->session()->regenerate();
return response()->json(null, 201);
}
return $this->setStatusCode(422)->respondWithError('password','invalid pasword');
}
.env
:
SESSION_DRIVER=file
SESSION_LIFETIME=120
SESSION_DOMAIN=localhost
SANCTUM_STATEFUL_DOMAINS=localhost:3000
我不知道我收到401错误的问题出在哪里!
推荐答案
我也遇到了同样的问题,解决方案是将localhost:8000(幼域)添加到SASTUM_STATEWY_DOMAINS
SESSION_DOMAIN=localhost
SANCTUM_STATEFUL_DOMAINS=localhost:8000,localhost:3000
这篇关于在使用nuxtjs登录到laravel避难所后出现401(未经验证)错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:在使用nuxtjs登录到laravel避难所后出现401(未经验证)错误


基础教程推荐
猜你喜欢
- php中的foreach复选框POST 2021-01-01
- 主题化 Drupal 7 的 Ubercart “/cart"页 2021-01-01
- php 7.4 在写入变量中的 Twig 问题 2022-01-01
- 使用 scandir() 在目录中查找文件夹 (PHP) 2022-01-01
- 如何在数学上评估像“2-1"这样的字符串?产生“1"? 2022-01-01
- Web 服务器如何处理请求? 2021-01-01
- PHPUnit 的 Selenium 2 文档到底在哪里? 2022-01-01
- php中的PDF导出 2022-01-01
- 将变量从树枝传递给 js 2022-01-01
- Yii2 - 在运行时设置邮件传输参数 2022-01-01