Ich versuche Inhalt Disposition-Header zu setzen individuelle Dateinamen zu erhalten, während in IE das Herunterladen von Dateien durchführen 11.IE 11 nicht analysiert HTTP Content Disposition-Header richtig
Ich habe extrem seltsames Verhalten im IE 11 konfrontiert: wenn Escape (U + 001B) char ist im Dateinamen der Content Disposition Header IE 11 kann nicht richtig Dateinamen (in Content Disposition Header) zur Verfügung gestellt. Zum Beispiel content_disposition
mit formatiertem file_name_1
löst 11 Fehler IE, aber mit file_name_2
Formatierung ist in Ordnung:
# There are invisible control character escape (U+001B)
name = u'_$B!'
file_name_1 = quote(name) # gives "_%1B%24B%21"
file_name_2 = "_%24B%21.pdf"
content_disposition = "attachment; filename*=utf-8''%s" % file_name_2
Gibt es irgendwelche Möglichkeiten, Unterstützung jegliche utf8 Dateinamen in IE11 zur Verfügung zu stellen.
Hinweis: In allen anderen Browsern zu funktionieren scheint alles und ich hoffe, es gibt Art und Weise, ohne zu brechen andere Browser IE 11 Verhalten zu beheben ...
Ich verstehe nicht - warum Möchte man überhaupt ein * unsichtbares * Zeichen in einem Dateinamen? Dies könnte ein Sicherheitsfilter sein. –
@Pekka 웃 Ort spielt keine Rolle dort% 1B könnte irgendwo im Dateinamen sein, das Problem ist, dass im Fall, wenn% 1b vorhanden ist - der Dateiname würde falsch angezeigt werden. Außerdem kann ich Daten nicht kontrollieren, die ich als Dateiname setzen würde. –
Welchen Dateinamen erhalten Sie stattdessen in IE11? –