{error: Unauthenticated.} Токены личного доступа Laravel 5.3

Ошибка возникает только при использовании токенов личного доступа. Если я использую клиент пароля для получения токена, все проходит нормально.

Это маршрут, который я использую для проверки того, что он проходит

Route::get('/test', function() {
    return "hello";
})->middleware('auth:api');

Это функция, которую я использую для получения токена доступа

public function testToken() {
    $user = User::where("id", 12)->first();

    $token = $user->createToken("TokenName")->accessToken;

    return $token;
}

Это токен доступа, который я пытаюсь использовать (тот, который получен от testToken())

eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjNlNTliODI1ZWVlZTYzZjRkMjYxZTliMDRiZTdlOGM2OTE2OGIxODIzOWVhZDQ3YjkwODY0ZGQxODU2ZmZkYjc1NmNiNzE2NTRjOGQ1N2U0In0.eyJhdWQiOiI1IiwianRpIjoiM2U1OWI4MjVlZWVlNjNmNGQyNjFlOWIwNGJlN2U4YzY5MTY4YjE4MjM5ZWFkNDdiOTA4NjRkZDE4NTZmZmRiNzU2Y2I3MTY1NGM4ZDU3ZTQiLCJpYXQiOjE0OTk3NzA4ODgsIm5iZiI6MTQ5OTc3MDg4OCwiZXhwIjoxODE1MzAzNjg4LCJzdWIiOiIxMiIsInNjb3BlcyI6W119.TkAanA7Un5Z4BHYVm1tBUtzQXDNl_z26fHcbzC-wNC-7zHg3GCqnWicgKxZsuE5_1zuDikqZj6tKKkRou5K2ftA9A6l3wBMxmyQZy-BZl20CbzyovYw5kfFwOdJYNKeAF5g0jBVXJdFCDvHexiQGrfzoj9b95v9jRNfdDbhrJd-1wHMQpIps7qjn3rtVIupwc2HpajJ4hADgZUCGjcV8YpOpWoaTt8lZocJUlUTbeNE0AwdI_c9tSA48qaSZizOIb1DYLSLZjeqKvRJFHvplAhTQN9glbF598Nws0FqkvnEWk-3nXL8EejJ155EAyNwKkDnc3e6W23JqjdGzXiHsTRmVDdizLrkk86Z-24oj2KJwcdPYMGkcnggqIZ8hn7ikGSoTV73G_nW_VUBOidHzcYKgMgXPQGST2gC3yPgAnQJPmXBUyc98hMz4LbDNkXKYcsMp23kUxC1caO3JYE4LljVLaQaxdhqZlaTBcaus5HtcRYrYMmZhgxaXpy-VOM2fljBW-QgM1rs8D9GwBuxecBmgPvbN6HqnYTlYRwmxbfOtKoeT7H5aK3_a36at1dL1V3K0S176v91ZGfWoxlYLzq_uWxpq_T9SOkaoxjeMfYiVjJyXMDsTbmE7PrQQcEwKNVc9DdcQgJmewd-Sr15O66inhH8j7-4_WPysxS6SXBY

Я передаю токен в заголовке (ПРИМЕЧАНИЕ, я тестирую с помощью почтальона)

Accept:application/json
Authorization:Bearer **TOKEN**

Погуглив, я обнаружил, что люди исправили это, установив дату истечения срока действия токена, хотя в моем случае это не сработало.

Я также нашел людей, предлагающих изменить Passport.php в провайдерах, но у меня нет этого файла для редактирования ... Я не знаю, может ли это быть из-за того, что я неправильно установил паспорт или что-то в этом роде. Я следовал документации по установке


person TheMysticalWarrior    schedule 11.07.2017    source источник


Ответы (1)


Я верю, что вы внимательно прочитаете документ, и проблема будет решена. https://laravel.com/docs/5.4/passport#installation https://laravel.com/docs/5.4/passport#personal-access-tokens

Этот маршрут создает новые токены личного доступа. Для этого требуются две части данных: имя токена и области, которые должны быть назначены токену:

const data = {
    name: 'Token Name',
    scopes: []
};

axios.post('/oauth/personal-access-tokens', data)
    .then(response => {
        console.log(response.data.accessToken);
    })
    .catch (response => {
        // List errors on response...
    });

person Hwong Alex    schedule 11.07.2017
comment
Не совсем, я читал их... И сам паспорт работает, а также может получить токен доступа... Но когда я передаю токен, хотя я использую тот же метод с токенами пароля, Он все еще возвращается без проверки подлинности. - person TheMysticalWarrior; 11.07.2017
comment
@TheMysticalWarrior получить токен через Token Name? - person Hwong Alex; 11.07.2017
comment
Извини, приятель, твоя формулировка меня немного смутила... xD - person TheMysticalWarrior; 11.07.2017
comment
Я только что протестировал новую версию, и все в порядке, и рекомендуется проверить config / auth.php и User.php, если они внесли специальные изменения. - person Hwong Alex; 11.07.2017
comment
Да, нашел проблему... используя 2 таблицы для аутентификации... Итак, он пытается найти информацию, которой нет в этой таблице... По крайней мере, теперь я знаю, в чем проблема xD - person TheMysticalWarrior; 12.07.2017