2010-04-28 4 views
5

Возможно ли получить доступ к кешу Google Chrome из внутреннего домена?Доступ к кешу Google Chrome

Я хотел бы написать расширение, которое загружает кешированную версию страницы, когда онлайн-доступ невозможен (например, проблема подключения к Интернету).

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

Примечание: Насколько я могу судить, Google Chrome не поддерживает эту функциональность (по крайней мере, не из коробки): у меня был эпизод «без доступа в Интернет», и я был stranded ...

+0

не хром уже делает это сам? –

+1

Нет, кеши, как правило, не работают так. Обычно они работают только с использованием файлов, если им говорят использовать их собственную версию ... Объедините это с тем, что Chrome не имеет «Режим работы в автономном режиме». – Kinlan

ответ

4

К сожалению, я на 99% уверен, что это невозможно без использования NPAPI в вашем расширении.

Расширения Chrome изолированы в отдельном процессе и могут работать только с файлами в папке расширения.

Существует некоторая поддержка таких вещей, как chrome://favicon/. Но об этом, по крайней мере, сейчас.

Source (Google Chrome Extensions Reference)

0

P.S. У меня просто была безумная идея. Расширения имеют доступ только к файлам в их папке ... но Chrome хранит кеш в папке Cache. Что вы можете попробовать, скопируйте (или переместите) папку Cache в подпапку внутри расширения. Теперь расширение должно иметь доступ к кешу.

Достаточно ли этого, чтобы фактически разрешить автономный режим ... Я не знаю. Однако я вижу некоторые файлы HTML (и, очевидно, много изображений) в папке Cache.

Фактически, даже без использования расширения я могу открыть HTML-файлы в Chrome. И поскольку они хранятся на вашем компьютере, вы должны иметь доступ к ним даже без Интернета.

P.S. папка Cache хранится в PATH-TO-CHROME/Default/Cache

P.P.S. существует способ хранить всю веб-страницу и архивировать ее для последующего использования. Проверьте это расширение:

https://chrome.google.com/extensions/detail/mpiodijhokgodhhofbcjdecpffjipkle

0

Просто сделать простой плагин манифест, который вызывает страницу AJAX, который загружает JQuery из CDN, а затем использует его для разбора всех <a> элементов на странице и изменять href значения в имеют префикс: http://webcache.googleusercontent.com/search?q=cache:

Так <a href="http://stackoverflow.com/questions/blah"> становится:

<a href="http://webcache.googleusercontent.com/search?q=cache:http://stackoverflow.com/questions/blah">

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

У меня возникает соблазн просто написать этот плагин, но я уверен, что это будет табу в глазах Google, поэтому он будет заблокирован или удален довольно быстро.:)

+2

«Voilà» по-французски, а не «Viola» :) – jldupont

+0

Ваша неприязнь к поклоняющимся инструментам очень противоречит типичному отношению laissez-faire, которого я ожидал бы от истинного франкоязычного человека. ;) – AWDNUT

Смежные вопросы