У меня есть простой проект с Laravel 6, в котором я AJAX загружаю данные из моего представления Blade. Таким образом, я мог бы иметь:
$.ajax({url: "api/users", success: (result) => { ...
В этом примере используются два маршрута:
Route::middleware('auth:api')->get('api/users', 'Api\ApiUsersController@index');
Route::middleware('auth:web')->get('users', 'UsersController@users');
Я хотел бы понять, как правильно получать данные API со страницы users
.
- Если я вручную сделаю
$.ajax({url: "api/users?api_token={{Auth::user()->api_token}}"
, тогда этот токен может быть легко украден, и аутентификация может быть обойдена. - Если я изменю свое промежуточное ПО API в
auth:web
, то никто не сможет получить доступ к API с помощью реальных токенов API приложений.
Полагаю, лучшим способом было бы сохранить маркер пользовательского API по умолчанию в сеансе и извлечь его, если он существует из API-интерфейса.
Как правильно поступить?