Я создаю свое первое приложение с силекс. Только зарегистрированные пользователи могут использовать приложение. На первой странице я создаю форму входа, поэтому пользователь может аутентифицироваться. Оформление бронирования:Аутентификация токена Silex
$app->register(new Silex\Provider\SecurityServiceProvider(), array(
'security.firewalls' => array(
'secure_area_edison' => array(
'pattern' => '^/admin/',
'form' => array('login_path' => '/', 'check_path' => '/admin/login_check'),
'logout' => array('logout_path' => '/admin/logout', 'invalidate_session' => true),
'users' => function() use ($app) {
return new App\Services\UserProvider($app['db']);
},
),
)
));
Для каждого URL-адреса после '/ admin' требуется, чтобы пользователь прошел аутентификацию. Все работает отлично, и теперь я хочу расширить свое приложение с помощью API. Я создаю новый контроллер, который извлекает данные из базы данных и возвращает ответ JSON, эта работа также прекрасна.
Но как может пользователь аутентифицироваться для этого API? Должен ли я создать новый столбец в моей пользовательской таблице, например «хэш» или «токен»? Пользователи, которые будут получать ответ JSON, должны отправить токен в каждый запрос на получение, верно ли это?
URL-адрес может выглядеть:
/admin/api/allProducts/token/<TOKEN>