Угловой http пост-запрос неожиданно добавляет скобки - PullRequest
0 голосов
/ 05 марта 2019

Когда сделан запрос.Я видел, что дополнительные скобки прикреплены перед типом запроса.как показано ниже.

{"username":"demo","password":"123"}POST /authentication/

и мой бэкэнд отказывается от этого с недопустимым методом с кодом ошибки 405.

Бэкэнд находится в Django rest_framework и переднем конценаходится в Угловой 6 .

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

Пример кода запроса angular приведен ниже:

this.http.post(url, JSON.stringify(datum),{'headers':headers}).subscribe()

Редактировать: Ошибка появляется после каждого запроса на выход из системы.Всякий раз, когда я пытаюсь уничтожить сеанс во время выхода из системы, будь он успешным или нет из серверной части, сразу после этого начинается ошибка.

1 Ответ

0 голосов
/ 08 марта 2019

Решение:

Не разрушайте локальное хранилище в теле ответа внутренней службы.

this.http.post(this.logout_url, '', {'headers':headers}).subscribe(
  response => {
    localStorage.removeItem('usersession');
    localStorage.clear();
    }
  });

Сначала уничтожьте локальное хранилище, чтобы получить выход пользователя из системы, а затем вызовите внутреннюю службу выхода из системы.как ниже:

localStorage.removeItem('usersession');
localStorage.clear();

this.http.post(this.logout_url, '', {'headers':headers}).subscribe();
...