Ich gebe in einigen Antworten einen Stream zurück, der den entsprechenden Content-Type-Header festlegt. Das Verhalten ich suche, ist dies:So legen Sie den Dateinamen der Antwort fest, ohne den saveas-Dialog zu erzwingen
Wenn der Browser in der Lage, Inhalte des angegebenen Inhaltstypen zu machen, dann sollte es sie im Browser-Fenstern angezeigt werden soll.
Wenn der Browser nicht weiß, wie der Inhalt gerendert wird, sollte das Dialogfeld saveas angezeigt werden, in dem der Dateiname in der Antwort angegeben werden soll.
Das Problem, dass, wenn ich den Content-Disposition-Header mit:
"attachment; filename =" myfile.txt ""
der Browser die savesas immer angezeigt werden Dialog.
Wenn ich die Content-Disposition nicht setze, ist der Dateiname im saveas-Dialog derjenige in der URL, der in meinem Fall nicht funktioniert.
Ich habe auch versucht, die Content-Disposition inline zu setzen, aber das Ergebnis ist das gleiche.
Ich bin nicht sicher, was Sie meinten die von ‚nicht weit unterstützt‘ zurück, wenn Sie diese Antwort schrieb, und wünschen hatte man harte Fakten statt FUD gegeben . Ich habe gerade in IE 6, IE 8, modernen Chrome und modernen Firefox getestet, und es funktioniert in allen von ihnen; Soweit ich das beurteilen kann, ist es heutzutage absolut sicher. –
Funktioniert nicht mit FireFox 37.0.2 und Internet Explorer 11.0.18. Mir wird ein Dialogfeld "Speichern unter" angezeigt. Chrome funktioniert jedoch. – angularsen
Eigentlich funktioniert es sowohl in Firefox 37.0.2 und IE 11.0.18 (gerade getestet). Sie verwenden wahrscheinlich einen Inhaltstyp, den Ihr Browser nicht inline anzeigen kann. – Patonza