【发布时间】:2021-09-24 06:01:37
【问题描述】:
您好,我正在尝试使用 laravel 护照保护 API,但总是向我抛出未经授权的 401。 我在哪里犯错了?有什么帮助吗?谢谢。
我在 User.php 中添加了 HasApiTokens,
并取消注释 'App\Model' => 'App\Policies\ModelPolicy' 并添加到 AutServiceProvider.php 中的启动 Passport:routes(),
在
auth.php 'api' => [
'driver' => 'passport',]
在 RegisterController.php 中
protected function create(array $data)
{
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
$token = $user->createToken('API Token')->accessToken;
return $user;
}
在 bootstrap.js 中
const token = '3acdc8cddb433947ea7cc51de909fdc50dcdf601ac521ac37ff1b3ee3a61e47e2111d297a07e147e'
window.axios = require('axios');
window.axios.defaults.withCredentials = true;
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
window.axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
在 Posts.vue axios 中
mounted() {
axios.get('/public/api/posts').then(response=>{
this.data =response.data
})
},
【问题讨论】:
标签: php laravel vue.js laravel-passport