@dikyzz

В safari на ipad в истории просмотров видно введенные пароли. Как исправить?

Когда авторизуюсь на своем сайте, в истории просмотров на сафари в url адресе видно параметры заполненной формы: логин и пароль. Из-за чего такое может быть?
5dc3d71d7ebd1698679717.png

В более новых устройствах на том же сафари уже нет такой проблемы, на андройдах тоже нормально.
ios 9.0.2

Код:
1. Сабмит формы
function onSubmit(data: UserData) {
    setErrorMessage('');
    setError(false);

    if(!validatePhone(data.username)) {
      setPhoneError(true)
      return false;
    }
    else{
      data.username = data.country_code + data.username.replace(/[^0-9]/g, '');
      setPhoneError(false)
    }

    AuthService.login(data as UserData).then(async token => {
      await AuthService.auth(token);
      store.dispatch(addFeedNotifications([{type: 'success', title: 'Вход успешно выполнен!', text: ''}]))
      if (redirectBack) Router.back();
      else redirect('/');
    }).catch(() => {
      store.dispatch(addFeedNotifications([{type: 'error', title: 'Ошибка!', text: 'Неверно введен логин или пароль.'}]))
    });
  }


2. Логин
static async login(data: GetTokenData) {
    const res = await post<GetTokenSuccess>('/api/login/', data);
    return res.data.token;
  }


3. Авторизация и получение инфы о юзере по токену
static async auth(token?: string) {
    if (!Axios.defaults.headers.Authorization && !token) return;

    if (token) {
      setCookie('authtoken', token);
      Axios.defaults.headers.Authorization = `Token ${token}`;
      this.getUserData();
    }

    let currentUser = store.getState().user.currentUser;
    if(!currentUser) {
      store.dispatch(requestUser());
      return await get<User>('/api/socialnetwork/auth/').then(async res => {
        const user = res.data;
        store.dispatch(receiveUser(user));
        store.dispatch(receiveUsers([user]));

        await this.getUserData();
        return user;
      }).catch(_err => {});
    }
  }
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 1
Используется метод GET вместо POST, нужно передалать на правильный метод.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
NewTech Екатеринбург
от 70 000 до 120 000 руб.
от 2 000 до 2 500 usd.
GFX Пермь
от 120 000 руб.
11 дек. 2019, в 21:40
50000 руб./за проект
11 дек. 2019, в 21:29
80000 руб./за проект
11 дек. 2019, в 19:37
150000 руб./за проект