Как прочитать URL перенаправления из ответа 3xx? - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь прочитать URL перенаправления из перенаправления 3xx. (Я планирую просто прочитать заголовок location: https://myredirectedurl.com и обработать его самостоятельно в JS. Однако, когда я делаю запрос на выборку, я получаю

Доступ к выборке в 'https://myredirectedurl.com '(перенаправлено из' https://localhost: 8000 / somepath ') из источника' https://localhost: 8000 'заблокировано политикой CORS: Нет' Access- Заголовок Control-Allow-Origin 'присутствует в запрашиваемом ресурсе. Если непрозрачный ответ удовлетворяет вашим потребностям, установите режим запроса в' no-cors ', чтобы получить ресурс с отключенным CORS.

I Я знаю, почему возникает эта ошибка, и я понимаю, как работает CORS. Однако я не хочу, чтобы функция fetch выполняла перенаправление.

Я прочитал по этому вопросу , что redirect: 'manual' свойство может помочь, если оно установлено. Это останавливает появление ошибки CORS и останавливает перенаправленный запрос, однако теперь я не могу прочитать заголовок location: https://myredirectedurl.com. Я wi sh, чтобы прочитать это, так что я могу обрабатывать перенаправление на основе в моем приложении logi c и n возможно использовать window.location.replace

1 Ответ

0 голосов
/ 15 апреля 2020

Я просто хотел обновить, если кто-то спотыкается здесь из поисковой системы. Это невозможно. Браузер прозрачно перенаправляет, прежде чем клиент javascript может даже взаимодействовать с ним. Рекомендуемый способ справиться с этим - использовать состояние som 2xx для перенаправления, а затем читать URL перенаправления из заголовка или содержимого.

...