Перехват запроса загрузки изображения браузера

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

Фактический сценарий таков. Веб-приложение отправляет XHR на сервер и выполняет подтверждение аутентификации. Все последующие запросы должны включать заголовок auth. Изображения повреждены, потому что браузер не отправляет заголовки для запросов изображения.

Заранее спасибо.


person Bala    schedule 15.07.2011    source источник
comment
Наверняка для этого и нужен ваш авторизационный файл cookie?   -  person James McCormack    schedule 15.07.2011
comment
Вероятно, вам следует использовать файл cookie вместо этих заголовков аутентификации.   -  person Martin    schedule 15.07.2011


Ответы (3)


Вы можете запросить изображение с помощью AJAX с соответствующими заголовками. Затем вы должны base64 закодировать двоичный файл изображения и вставить его в DOM, установив

<img src="data:image/png;base64,[base64 encoded image]" />
person asdf    schedule 16.07.2012

Нет, нет способа сделать это, и это тоже очень хорошая вещь.

(Ну, это невозможно сделать из вашего кода. Владелец браузера, конечно, может установить инструмент, который изменяет запросы, если он того пожелает.)

Тот факт, что браузеры выдают HTTP-запросы для сценариев и изображений по-своему, означает, что сайт, использующий XHR, может предотвратить некоторые виды CSRF-атак (подделка межсайтовых запросов), заставив сервер отклонять определенные запросы, если они не содержат специальный заголовок, который добавляет собственный код XHR сайта.

Вы также не можете точно контролировать, что браузер делает с заголовком с сообщениями формы.

person Pointy    schedule 15.07.2011

Существует способ перехвата запросов изображений в браузере: ознакомьтесь с Capturing API в Mobify.js: https://hacks.mozilla.org/2013/03/capturing-improving-performance-of-the-адаптивный-веб/

person shawnjan    schedule 22.03.2014