Почему я получаю ответ на запрос перед полетом? - PullRequest
0 голосов
/ 18 октября 2019

Для приложения ionic 3, над которым я работаю, мы настроили бэкэнд для использования CORS.

Пока все хорошо.

Теперь мы переключились с авторизации на куки-токены с помощью Authorization заголовок. Кроме того, мы добавили несколько других заголовков в заголовок ACCESS-CONTROL-ALLOW-HEADERS (например, User-Agent, Sec-Fetch-Mode, Referer & Authorization для обхода дополнительных ограничений).

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

Разве браузер / веб-представление не должны абстрагироваться от приложений, чтобы не пропускать конфиденциальную информацию об ошибках и прозрачно обрабатывать CORS?

Это примерчто показывают инструменты chrome dev для одного из этих запросов:

General Request URL: [URL] Request Method: OPTIONS Status Code: 200 OK Remote Address: [IP Address] Referrer Policy: no-referrer-when-downgrade

Заголовки ответа Access-Control-Allow-Credentials: true Access-Control-Allow-Headers: Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-Headers, Authorization, Origin, User-Agent, Sec-Fetch-Mode Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, DELETE Access-Control-Allow-Origin: http://localhost:8080 Access-Control-Max-Age: 3600 Allow: GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, PATCH Cache-Control: no-cache, no-store, max-age=0, must-revalidate Connection: Keep-Alive Content-Length: 0 Date: Fri, 18 Oct 2019 12:57:07 GMT Expires: 0 Keep-Alive: timeout=5, max=99 Pragma: no-cache Server: Apache-Coyote/1.1 X-Application-Context: application:prod:8080 X-Content-Type-Options: nosniff X-Frame-Options: DENY X-XSS-Protection: 1; mode=block

Заголовки запроса Provisional headers are shown Access-Control-Request-Headers: authorization Access-Control-Request-Method: GET Origin: http://localhost:8080 Referer: http://localhost:8080/ Sec-Fetch-Mode: cors User-Agent: Mozilla/5.0 (Linux; Android 9;...) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.116 Mobile Safari/537.36 [some additional info added to the user agent]

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