Как сохранить токен jwt в localStorage и отправить его обратно на сервер с заголовком в экспресс? - PullRequest
1 голос
/ 11 апреля 2019

Я прочитал много статей в stackoverflow и видел много видео на YouTube, но не смог найти пример кода, демонстрирующий поток сохранения jwt в localstorage - отправить обратно на сервер с заголовком авторизации для проверки .

Вот что я хочу сделать.

Когда клиент входит на сервер, сервер выдает токен и сохраняет его клиенту localStorage (или sessionStorage).

Всякий раз, когда клиент вызывает API, к которому можно получить доступ только с токеном, клиент получает токен обратно из localStorage и отправляет этот токен с заголовком авторизации (req.headers.[x-access-token] или req.headers.[authorization]).на сервер.

Но все статьи, которые я прочитал, объясняют эту проблему с почтальоном, который не показывает, как сохранить его в localStorage и поместить в заголовок авторизации.

Должен ли я использовать localStorage.setItem, когда сервер передает токен клиенту, и использовать и localStorage.getItem и new Headers() с append() или axios перед отправкой этого токена обратноerver?

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

1 Ответ

1 голос
/ 11 апреля 2019

Вы можете хранить свой токен jwt в localalstorage, и когда вы делаете вызов API, вы можете добавить токен в заголовки как токен.если вы используете axios, вы можете прикрепить свой токен к заголовкам, как это.Здесь токен хранится в локальном хранилище с ключом 'jwtToken'

  axios.post('http://yourendpoint',data,{ headers: { Authorization:localStorage.getItem('jwtToken') } })
            .then(response=> console.log(response))
            .catch(error => console.log(error));
   };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...