У меня есть сервер с базовой HTTP-аутентификацией, и у меня есть клиентский скрипт, который знает имя пользователя и пароль для вышеуказанного HTTP-сервера. Я использую запрос XHR
и его setRequestHeader
для установки заголовков авторизации, этот бит не позволяет браузеру запрашивать диалоговое окно входа в систему HTTP по умолчанию.
request.setRequestHeader('Authorization', authInfo);
Это нормально для AJAX-запросов, но в случае, если я хочу загрузить файл с указанного сервера и вынужден обойтись без AJAXи использовать что-то вроде окна .location.href
из JavaScript, где браузер сам создает запрос. Поскольку этот запрос не будет включать заголовок авторизации (brwoser автоматически добавит заголовок авторизации для каждого запроса только после того, как он предложит диалоговое окно входа в систему и сохранит base64 информации для входа в систему для фактического сервера), браузер предложит диалоговое окно входа в систему HTTP, которого я хочу избежать.
Так есть ли способ установить заголовки для не-ajaxзапросов, созданных браузером?