Erzwingen, dass der Dateilink als Vorschau auf der Registerkarte [neu] geöffnet wird (anstatt ihn herunterzuladen).

12

Manchmal möchten Sie einem PDF / Bild / etc-Link folgen und ihn tatsächlich im Browser sehen, anstatt ihn herunterzuladen.
In meinem letzten Run-In war es mit einem Screenshot auf einem Mantis- Server, den ich verwende.

Wenn ich auf den Link klicke, werde ich sofort aufgefordert, die Datei zu speichern, ohne die Option, den Browser zu öffnen.
Ich möchte es wirklich nicht herunterladen, es in einem Bildbetrachter öffnen und dann daran denken, die Datei zu löschen, wenn ich fertig bin. Ich möchte, dass dies vom Browser erledigt wird, wenn ich die Registerkarte für normale Bilder / PDFs schließe, wie wenn Sie darauf klicken open [image] in new tab.

Ich weiß, warum der Browser dies tut, der Inhalt wird mit dem HTTP-Header bereitgestellt Content-Disposition:attachment, aber ich bin mir sicher, dass es eine erweiterte Einstellung, eine versteckte Kontextmenüoption oder eine großartige Erweiterung geben würde, mit der Sie etwas anzeigen können, das jemand von Ihnen wollte tatsächlich speichern.

Weiß jemand so etwas?


BEARBEITEN

Firefox hat anscheinend ein Add-On dafür, aber ich kann keinen Port für Chrome finden.

Hashbrown
quelle
Dies ist die Quelle des Artikels: support.google.com/chrome/answer/1060734 Möglicherweise waren Chrome PDF Viewer und Adobe Reader standardmäßig deaktiviert?
Darius
Nun, es geht nicht nur um pdf's, und ich bin sicher, es Content-Dispositionüberschreibt es (was vom Server festgelegt wird, keine Benutzerpräferenz)
Hashbrown
3
Hab das gerade gesehen .. und möglicherweise ein Duplikat? -> superuser.com/questions/199382/… - (Die Antwort bezieht sich auf die Verwendung einer Chrome-Erweiterung "redirector" ( chrome.google.com/webstore/detail/redirector/… ), um den Header für die Inhaltsdisposition zu entfernen.
Darius
Es wurde hier vor stackoverflow.com/questions/6293893/…
Vasko
@Vasko nein, das hat es nicht. Diese Antworten beziehen sich alle darauf, was der Webmaster tun kann, um sicherzustellen, dass Benutzer mit ihren Browsern standardmäßig eine Datei herunterladen. Meine Frage ist, als Benutzer ohne Kontrolle darüber, wie der Inhalt gehostet wird, wie wir das Gegenteil durchsetzen
Hashbrown

Antworten:

3

Wer definiert, ob die Datei heruntergeladen oder geöffnet wird, ist der Website-Entwickler. Natürlich wird die Datei im Browser geöffnet, aber wenn der Entwickler den folgenden HTML-Header erzwingt, wird sie immer heruntergeladen.

Es gibt keine Möglichkeit zu erzwingen. :(

Response.AddHeader("Content-Disposition", "attachment; filename=fileToForceDownload.pdf");
Response.AddHeader("Content-Length", 12345);
Response.ContentType = "application/octet-stream";
Response.BinaryWrite(bytesOfFile);

Um im Browser zu öffnen, muss der Entwickler Folgendes deklarieren:

Response.AddHeader("Content-Disposition", "inline; filename=fileToOpen.pdf");
Response.ContentType = "application/pdf";

Das Obige wurde in C # geschrieben, aber seine Parameter sind allen Sprachwebsites gemeinsam

Sergio Cabral
quelle
Probleme mit Android: stackoverflow.com/questions/4674737/…
Kiquenet
Android 4, Eiscremesandwich . Beispiel: Content-Disposition: attachment; filename="MyFileName.ZIP";funktioniert aufgrund des Semikolons am Ende nicht richtig. Irgendwelche Tests (und eine Zusammenfassung ) für alle Android-Versionen? Nützlich: stackoverflow.com/questions/6319389/… Google Chrome v12 release introduced a bug that triggers the problem you describe. You can fix it by sending the Content-Length header bugs.chromium.org/p/chromium/issues/detail?id=85549
Kiquenet
Das stimmt überhaupt nicht, selbst in meiner Frage erwähne ich, dass es ein Firefox-Addon gibt, das funktioniert, und Darius hatte einen Kommentar gepostet, der für Chrome funktioniert. Die Frage fragt speziell nach einer Client-Lösung und spielt sogar darauf an, dass die serverseitige Korrektur bereits bekannt ist, in diesem Fall jedoch nicht anwendbar ist. Daher hilft es uns nicht, hier noch einmal darauf einzugehen. (Ich habe kürzlich eine positive Bewertung für die Frage erhalten, und ich gehe immer zurück und überprüfe die Antworten, wenn Sie sich fragen, warum dieser Kommentar einige Jahre später aus dem Nichts kam. Ich wollte Sie nur wissen lassen, warum Sie die nicht erhalten haben tick)
Hashbrown
0

Haben Sie versucht, Google nach "PDF in Chrome öffnen" zu durchsuchen?

Ich hatte eine Erweiterung, die gut funktionierte:

Kami (formerly Notable PDF)
2.0.6344
Document Viewer and Office Tool for your browser

Ich habe es jedoch deaktiviert, da PDF auch ohne diese Erweiterung in Chrome geöffnet wird.

Ich habe:

Office Editing for Docs, Sheets & Slides
109.1486.1491
View and edit Microsoft Word, Excel, and PowerPoint files...

Dadurch kann ich die meisten Office-Dateien ohne Office öffnen (siehe ma, kein Office).

Hoffe das hilft.

Reginald
quelle
you want to follow a pdf/image/etc link, diese Frage hat nichts speziell mit
PDFs
0

Wie von Sergio gesagt, ist es der Site-Entwickler, der definiert, ob die Datei heruntergeladen oder im Browser geöffnet wird. Wenn Sie PDF-Dokumente anzeigen möchten, empfehle ich, die Google Docs- Erweiterung zu aktivieren, die standardmäßig mit Chrome geliefert wird. Drücken Sie die Strg- Taste, während Sie auf das Bild klicken. Das Bild wird auf einer neuen Registerkarte geöffnet. Ich hoffe, dass dies für Benutzer mit diesem Problem funktioniert.

Grayson
quelle
definiert, klar, aber wir suchen nach einer Problemumgehung, die nicht unmöglich ist. Strg + Klick würde nur funktionieren, wenn das dispositionnicht auf gesetzt ist attachment, was in der Frage angegeben wurde. (Diese 'Antwort' wäre auch besser als Kommentar geeignet gewesen)
Hashbrown