Frage

Ich habe eine Website, wo die Menschen Dokumente hochladen können, und betrachten Sie sie später auf ihre Bequemlichkeit. Ich speichere die binären Informationen zusammen mit dem MIME-Typ in meinem db, und später streamen nur den binären Inhalt direkt in den Browser.

Dies funktioniert für für jeden Dateityp außer Office 2007-Dateien. Wenn ich versuche, das Office 2007-Dateien anzuzeigen, erhalte ich ein Popup-Anmeldeinformationen anfordert. Nachdem ich das den Dialog (durch Löschen) entlassen, erhalte ich ein weiteres Popup wie unten:

Nach diesem Dialog auch Abweisung (mit „Ja“ klicken), das Dokument geöffnet wird schließlich. Was gibt? Hat der Browser weiß wirklich nicht, wie Office 2007-Dateien zu behandeln? Ich überprüfte den MIME-Typ Ich rette, und alles sieht richtig. Alle Ideen, was ich tun kann diese Dialoge, um loszuwerden, wenn sie versuchen, eine Datei zu öffnen?

War es hilfreich?

Lösung

Schauen Sie sich dieser Erklärung auf VS Büro Entwickler.

Es gibt einen Registry-Hack, die Ihre Benutzer wählen könnten anwenden, diese Warnung zu befreien unterdrücken.

Andere Tipps

Ihr Browser wahrscheinlich nicht richtig Umgang mit dem Content-Typ und / oder Content-Disposition-Header richtig. Ich habe es in ff, Safari und IE für verschiedene Dateien präsentiert auf verschiedene Weise geschehen gesehen.

Versuchen Sie die Datei durch ein Abfangen von Proxy-Download (wie WebScarab oder burpsuite), um zu sehen, was die Response-Header aussehen. Es sollte zumindest lassen Sie wissen, ob das Problem Browser oder Server basiert.

Sind Sie mit Content-Disposition sowie einen Dateinamen zu setzen? Es könnte eine Idee sein, zu versuchen

Kehren Sie einen „Content-Disposition“ Header mit gestreamten Datei? Auch im Auge behalten, dass Firefox und ältere Versionen von IE behandeln die Dateinamen Header anders.

"Content-Disposition: attachment; filename = movie.mpg"

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top