In einigen Antworten wird ein Stream zurückgegeben, wobei der entsprechende content-type
- Header gesetzt wird. Das Verhalten, das ich suche, ist das folgende:
Wenn der Browser Inhalte des angegebenen Inhaltstyps rendern kann, sollte er diese im Browserfenster anzeigen.
Wenn der Browser nicht weiß, wie der Inhalt gerendert werden soll, sollte das Dialogfeld "Speichern unter" angezeigt werden, in dem der Dateiname der in der Antwort angegebene sein sollte.
Das Problem ist, dass wenn ich den Content-Disposition
Header setze mit:
"Anhang; Dateiname =" myfile.txt ""
der Browser zeigt immer den Dialog "Speichern unter" an.
Wenn ich Content-Disposition
Nicht einstelle, ist der im Dialogfeld "Speichern unter" verwendete Dateiname derjenige in der URL, der in meinem Fall nicht funktioniert.
Ich habe auch versucht, Content-Disposition
Auf inline
zu setzen, aber das Ergebnis ist das gleiche.
Der richtige Weg könnte sein:
Content-Disposition: inline; filename="myfile.txt"
Ich bin nicht sicher, ob das standardmäßig möglich ist. Aus Sicherheitsgründen senden Browser nicht alle Inhaltstypen, die sie verarbeiten können, sondern nur einige Accept-Encoding
, was in Ihrem Szenario nicht viel hilft.
Vielleicht können Sie Ihren Benutzer fragen, was er bevorzugt, und diese Informationen in seinem Profil speichern.