Получение статуса 401 с Safari, а не Chrome в React - PullRequest
0 голосов
/ 24 мая 2018

Проблема, с которой мы сталкиваемся, заключается в следующем: при использовании Safari в качестве браузера, а не Chrome, мы получаем статус 401 при вызове get api.Технологии, которые мы используем - React и Django Rest Framework.В React мы также используем axios.Опять же, все хорошо, когда мы используем Chrome в качестве нашего браузера (ошибка 401 не отображается, и аутентификация кажется нормальной), но когда мы переключаемся на Safari, он не работает.Также следует отметить, что при тестировании с помощью Postman, если мы сохраним токен в заголовке аутентификации, статус 401 не будет предоставлен (это работает).

Чтобы попытаться решить эту проблему, мы попробовали различные типы классов аутентификации в нашем бэкэнде Django и убедились, что CORS был в наших настройках.Мы также обеспечили соблюдение жизненного цикла реагирующих компонентов для правильного монтажа и включили соответствующую информацию, необходимую для каждого вызова API.Мы считаем, что это проблема на стороне клиента.

Пожалуйста, посмотрите на изображение ниже для краткого описания сетевых запросов / ответов, которые мы видим, и нашего вызова API.

Сетевые ответы иAPI Call

1 Ответ

0 голосов
/ 25 мая 2018

Таким образом, выясняется, что корень нашей проблемы заключался в том, что мы не завершили один из наших api-адресов прямой косой чертой, что привело к 301, а затем к 304. Chrome смог выполнить автозамену без проблем, но Safari, IE,и Firefox не может.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...