Как отправить токен JWT в jQuery в Laravel

Как отправить токен JWT в jQuery в Laravel

25.02.2020 10:26:29 Просмотров 21 Источник

Когда пользователь нажимает кнопку входа в систему, я перенаправляю его на usercontroller.php и получить JWT токен из API.

$result = $this->obtainAccessToken($request->email, $request->password);

затем я поместил токен JWT и информацию о пользователе в сеанс.

Session::put('user', $result);

затем перенаправьте пользователя на домашнюю страницу.

return redirect(route('home'));

Все в порядке.

Я могу получить доступ к этому маркеру и пользовательской информации на страницах view (blade) с помощью

Session::get('user');

Но иногда мне нужно запросить jQuery ajax на сервер. Но у меня нет информации о маркерах в моих файлах js. Как я могу отправить информацию о токене, которая хранится в сеансе, в файлы js?

Кроме того, я попытался сохранить эту информацию в Cookie, как;

Cookie::queue('user', $result, 10);

Но я не мог получить доступ в jQuery с помощью;

$.Cookie('user');

он возвращает неопределенное значение.

ОБНОВЛЕНИЕ

Я нашел способ что-то вроде этого;

<meta name="token" content="{{ Session::get('user')->token }} />

и доступ с помощью jQuery

$('meta[name=token]').attr('content);

но является ли это безопасным методом?


У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/60389439/how-to-send-jwt-token-to-jquery-in-laravel#comment106829320_60389439
Я не знаю, что такое жетон JWT. Если он не должен быть публично показан, то нет безопасного способа передать его любому вызову AJAX. В противном случае это хорошо :)
https://stackoverflow.com/questions/60389439/how-to-send-jwt-token-to-jquery-in-laravel#comment106829556_60389439
Токен jwt-это обычный веб-токен json, который отправляется с запросом. Существует пакет под названием "jwt-auth".

Ответы - Как отправить токен JWT в jQuery в Laravel / How to send JWT token to jQuery in Laravel

Является ответом!
Niklas

25.02.2020 11:04:26

but is it safe method?

Да, это так. Это самый распространенный способ вы выберите, если вы делаете Аякс-запрос к API.

Единственное, что может произойти, это то, что api возвращает код ошибки 219 (session expired), когда маркер ложен.

Овации,

Никлас

Закрыть X