Я использую следующее:
- Angular 7.2.15
- django 2.1.7
- djangorestframework 3.9.1
- djangorestframework-jwt 1.11.0
Я храню токен JWT в локальном хранилище, и это работает на компьютерах и android телефонах (по крайней мере, на тех, которые я тестировал), но когда я пытаюсь войти в систему на iPhone или iPad он принимает учетные данные и показывает мою целевую страницу в течение доли секунды, затем выдает 401 несанкционированную ошибку и журналы возвращаются (у меня настроен выход из 401 ошибки).
Я провел некоторую отладку, используя webtools с safari, и похоже, что мой токен не сохраняется, и это объясняет, почему я получаю 401.
Мой скрипт входа в систему довольно прост
login(username, password) {
return this.http.post<any>(`${this.apiUrl}/api-token-auth/`, { username, password })
.pipe(map(user => {
// store user details and jwt token in local storage to keep user logged in between page refreshes
localStorage.setItem('currentUser', JSON.stringify(user));
this._currentUserSubject.next(user);
return user;
}));
}
Есть мысли о том, как я могу получить этот токен для хранения на iPhone / iPad?
Заранее спасибо, jA C