Подтвердить что ты не робот

Как изменить сопоставления типов MIME в Chrome?

Я открыл образ изображения /x -png в новой вкладке, но Chrome просто загрузил его. Я googled и обнаружил, что Chrome не интерпретирует изображение /x -png как файл изображения.

Итак, я хочу изменить сопоставления типов MIME в Chrome. Возможно ли это?

4b9b3361

Ответ 1

Слишком плохо, что вы не ответили на мой комментарий, поэтому я забыл о вашем вопросе и потерял щедрость. Думаю, мой ответ даже немного удобнее для вас, потому что вам не нужно нажимать контекстное меню, чтобы видеть PNG прямо в браузере:

Расширение Chrome Редиректор может быть настроен для замены заголовков HTTP-ответов. Я создал правило, заменяющее заголовок Content-Type для любого URL-адреса, заканчивающегося на ".png":

Вставьте этот код JSON в текстовый редактор, сохраните его как png_rule.json, а затем в настройках Redirector перейдите в "Диспетчер правил", нажмите "Файлы", чтобы открыть параметры импорта/экспорта и импортировать правило версия 1:

[{"name":"x-png -> png","match":{"str":"\\.png$","type":0,"modi":false},"sub":{"str":"Content-Type","type":4,"modi":true,"modg":true},"repl":{"str":"image/png","decode":false},"enabled":1}]

Теперь все ваши PNG файлы должны быть в порядке.

Обновление: заменило простое совпадение шаблонов более строгим соответствием регулярному выражению, как было предложено автором или редиректором.


Обновление 2: Существуют такие системы, как Trac, которые создают URL-адреса для вложений PNG, заканчивающиеся на ". png", но на самом деле это HTML-страницы, которые только вставляют PNG в качестве части страницы. В этом случае нам нужно занести в черный список хостов, потому что иначе тип содержимого HTML-страницы будет установлен на изображение /png, хотя он должен оставаться text/html. Из-за ограничения Redirector заголовки могут быть просто перезаписаны для согласованных URL-адресов и частичной замены, например. только png вместо x-png, невозможно, нам нужно использовать довольно уродливый подход, явно исключающий определенные хосты в совпадение регулярных выражений. Например.

^https?://(?!([^/]+\.)?(?:trac\.edgewall\.org|freetz\.org)/).*\.png$

исключает URL-адреса, содержащие имя хоста trac.edgewall.org или freetz.org. Полный JSON для импорта в Redirector - это правило версия 2:

[{"name":"x-png -> png","match":{"str":"^https?://(?!([^/]+\\.)?(?:trac\\.edgewall\\.org|freetz\\.org)/).*\\.png$","type":0,"modi":true},"sub":{"str":"Content-Type","type":4,"modi":true,"modg":true},"repl":{"str":"image/png","decode":false},"enabled":1}]

Ошибка двух тестовых URL (т.е. отображение пустых "изображений" вместо HTML-страниц) с предыдущей версией правила без "черного списка" и теперь функционирующей с новым правилом, включая "черный список":

Легко добавить другие URL-адреса, если вы знаете небольшое регулярное выражение или просто играете.

Кстати: для URL-адресов Trac хорошей альтернативой может быть использование общей части "/attachment/ticket/" для "черного списка". Таким образом, вы можете включить черный список всех установок Trac во всем мире вместо списка фиксированных хостов. Итак, это правило версия 3:

[{"name":"x-png -> png","match":{"str":"^https?://(?!([^/]+)?/attachment/ticket/).*\\.png$","type":0,"modi":true},"sub":{"str":"Content-Type","type":4,"modi":true,"modg":true},"repl":{"str":"image/png","decode":false},"enabled":1}]

Обновление 3: Редиректор больше не доступен в магазине Chrome, но исторические версии можно загрузить со старой Домашняя страница Redirector.

Ответ 2

Кажется, что вы не можете редактировать отображения MIME-типа, см. "View As MIME Type" в Chrome или Firefox

Этот ответ fooobar.com/questions/169179/... представляет особый интерес. Автор сделал и открыл источник расширения Chrome для открытия файлов в виде разных типов MIME с помощью добавленного пункта меню при щелчке правой кнопкой мыши, хотя он не обеспечивает глобальный механизм обработки.

EDIT:

Расширение по умолчанию имеет только открывающиеся опции text/html и text/plain, но вы можете добавить любые расширения, которые вам нравятся, в том числе image/png, в настройках расширений. Здесь тестовое изображение.

Эта ошибка была перенесена на Без энтузиазма 13 августа 2012 года в трекере Chromium bug tracker, поэтому, надеюсь, это скоро будет исправлено и в Chrome.

Ответ 3

По какой-то причине они удалили перенаправитель из веб-магазина Chrome. Вы можете найти любую версию перенаправления здесь

Вот json для форматов .jpg.gif и .png:

[{ "name": "x-png → png", "match": { "str": "\.png $", "type": 0, "modi": false}, "sub": { "ул": "Content-Type", "тип": 4, "модифицированный": правда, "Mod ^": истинно}, "REPL": { "ул": "изображение/PNG", "расшифровывает": false "," enabled ": 1}, {" name ":" x-jpg → jpg "," match ": {" str ":" \. jpg $ "," type ": 0," modi ": ложь}," суб": { "ул": "Content-Type", "тип": 4, "модифицированный": правда, "Mod ^": истинно}, "REPL": { "ул": "изображение/JPG "," decode ": false}," enabled ": 1}, {" name ":" x-gif → gif "," match ": {" str ":" \. gif $ "," type ": 0, "модифицированный" ложь}, "суб": { "ул": "Content-Type", "тип": 4, "модифицированный": правда, "Mod ^": истинно}, "REPL": { "ул ":" изображение /GIF ", "расшифровывает" ложь}, "включен": 1}]

Ответ 4

Существует расширение Chrome, которое может изменять тип содержимого и расположение для любого шаблона, поэтому его можно использовать для принудительного отображения png вместо загрузки (но это хорошо для многих других случаев, я использую его для render txt как HTML): Изменить расширение Chrome для содержимого