У меня есть интерфейс Vue CLI, поэтому я пытаюсь использовать Laravel Passport для обработки аутентификации запросов.
https://laravel.com/docs/5.7/passport#consuming-your-api-with-javascript
У меня есть маршрут api/login
, который выполняетследующее ( почти копия и вставка отсюда ):
public function login(){
if(Auth::attempt(['email' => request('email'), 'password' => request('password')])){
$user = Auth::user();
$success['token'] = $user->createToken('MyApp')->accessToken;
return response()->json(['user' => $user], $this->successStatus);
}
else{
return response()->json(['error'=>'Unauthorised'], 401);
}
}
После того, как я нажал на него с помощью запроса AJAX, пользователь успешно вошел в систему.
Но если я сделаю что-то подобное в своем действии Vue:
login({commit, dispatch}, {email, password}){
axios.post('/api/login', {
email, password
}).then( response => {
console.log("Check login was successful", response.data);
commit('setUser', response.data);
axios.get("/api/user").then(response => {
console.log("Still logged in:", response);
});
});
Консоль скажет следующее:
Check login was successful {user: {…}}
GET http://localhost:8080/api/user 401 (Unauthorized)
В документах Laravel говорится, что ...
Это промежуточное ПО Passport будет прикреплять файл cookie laravel_token к вашим исходящим ответам.
Что я делаю не так / как мне получить доступ к этому laravel_token
для будущих запросов?