2010-04-28 17 views
5

Ist es möglich, innerhalb einer Erweiterung auf den Cache von Google Chrome zuzugreifen?Zugriff auf den Cache von Google Chrome

Ich möchte eine Erweiterung schreiben, die eine zwischengespeicherte Version einer Seite lädt, wenn auf die Online-Seite nicht zugegriffen werden kann (z. B. Internetkonnektivität).

Aktualisiert: Ich weiß, dass ich eine NPAPI zugänglich durch eine Erweiterung Plugin schreiben könnte dies zu tun, aber ich würde lieber leiden nicht ein Schreiben ... Ich bin nach einer Lösung ohne zu NPAPI greifen, bitte.

Hinweis: Soweit ich das beurteilen kann, unterstützt Google Chrome diese Funktionalität nicht (zumindest nicht standardmäßig): Ich hatte gerade eine Episode von "no Internet access" und ich war gestrandet ...

+0

macht Chrome das nicht schon selbst? –

+1

nein, Caches neigen dazu, nicht so zu arbeiten. Normalerweise arbeiten sie nur mit den Dateien, wenn sie aufgefordert werden, ihre eigene Version zu verwenden .... Kombinieren Sie das mit Chrome ohne "Offline-Modus arbeiten". – Kinlan

Antwort

4

Leider bin ich 99% sicher, dass dies ohne Verwendung eines NPAPI in Ihrer Erweiterung unmöglich ist.

Chrome-Erweiterungen sind Sandboxed für ihren eigenen Prozess und können nur auf Dateien im Ordner der Erweiterung zugreifen.

Es gibt einige Unterstützung für Dinge wie chrome://favicon/. Aber das ist es zumindest für jetzt.

Source (Google Chrome Extensions Reference)

0

P. S. Ich hatte nur eine verrückte Idee. Erweiterungen haben nur Zugriff auf Dateien in ihrem Ordner ... aber Chrome speichert seinen Cache im Cache-Ordner. Was Sie versuchen könnten, ist, den Cache-Ordner in einen Unterordner innerhalb der Erweiterung zu kopieren (oder zu verschieben). Die Erweiterung sollte nun in der Lage sein, auf den Cache zuzugreifen.

Ob dies ausreicht, um den Offline-Modus tatsächlich zu aktivieren ... weiß ich nicht. Ich sehe jedoch einige HTML-Dateien (und natürlich eine Menge Bilder) in meinem Cache-Ordner.

In der Tat, auch ohne eine Erweiterung zu verwenden, kann ich die HTML-Dateien in Chrome öffnen. Und weil sie auf Ihrem Computer gespeichert sind, sollten Sie auch ohne Internet darauf zugreifen können.

P.S. der Cache-Ordner wird unter PATH-TO-CHROME/Default/Cache gespeichert

P.P.S. Es gibt eine Möglichkeit, eine gesamte Webseite zu speichern und für die spätere Verwendung zu archivieren. Überprüfen Sie diese Erweiterung aus:

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

0

nur ein einfaches Plugin-Manifest machen, die eine AJAX-Seite aufruft, die jQuery von CDN geladen wird, und dann verwendet er alle <a> Elemente auf der Seite zu analysieren und verändern, um die href Werte haben dieses Präfix: http://webcache.googleusercontent.com/search?q=cache:

So <a href="http://stackoverflow.com/questions/blah"> wird:

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

Voilà, Sie sind Cache-Surfen, aber Sie müssen immer noch zu Google gelangen. Ich verstehe, dass diese Antwort ein wenig außerhalb des Umfangs der Frage liegt, aber immer noch eine Menge Probleme mit der Internetverbindung löst.

Ich bin versucht, nur dieses Plugin zu schreiben, aber ich wette, es wäre Taboo in Googles Augen, so würde es ziemlich schnell blockiert oder entfernt werden.:)

+2

"Voilà" auf Französisch und nicht "Viola" :) – jldupont

+0

Ihre Abneigung gegen Streichinstrumente steht im Gegensatz zu der typischen Laissez-faire-Haltung, die ich von einem echten Frankophon erwarte. ;) – AWDNUT

Verwandte Themen