Программно сохранять или получать данные байтового массива (для сохранения другими способами) изображений на странице в любом браузере без необходимости их повторной загрузки - PullRequest
0 голосов
/ 10 февраля 2020

Я ищу способ сохранить изображения на странице, которую я просматриваю (по сути, вычищаю по мере просмотра), не делая повторных запросов на загрузку. Есть несколько случаев, когда изображения просто не будут загружаться должным образом, если вы попробуете это, и, поскольку браузер уже загрузил их один раз, я чувствую, что должен быть способ избежать потери inte rnet traffi c и времени потратил ожидание загрузки изображений, особенно больших, чтобы снова. Может быть, есть способ прочитать их из кэша, которого я еще не нашел.

Я уже пытался использовать canvas для перерисовки изображений и получения строки в кодировке base64 и получения двоичного массива больших двоичных объектов. байтов, но эти методы не работают, если есть какие-либо ограничения CORS. А также это не приведет к получению оригинальных байтов изображения 1: 1.

Возможно ли в любом современном браузере получить изображения, которые уже были получены (как вы можете видеть, например, в Firefox> Инструменты> Информация о странице> вкладка Медиа) без повторного запроса на загрузку?

Затем я бы отправил байтовый массив (или его строку в кодировке base64) файла исходного изображения в localhost адрес, чтобы сохранить его как файл с помощью приложения для прослушивания (эту часть я уже реализовал).


Я не ищу дополнения / расширения браузера или какие кнопки меню нажимать в браузере GUI, но для javascript методов я могу вызвать пользовательский скрипт через GreaseMonkey (или любое другое расширение пользовательского скрипта, которое поддерживает рабочее решение), чтобы получить данные файла исходного изображения.

Я уже смотрел на старые вопросы и у них либо нет рабочих ответов, либо ответы имеют проблемы, такие как CORS или перерисовка холста с потерями или повторные запросы на загрузку, которые могут не работать, как описано выше , Поэтому, если вы ссылаетесь на дубликат, убедитесь, что у него есть решение, которое работает без этих предостережений.

...