django.http.response.HttpResponseオブジェクトを返すDjangoビュー(ダウンロードアタッチメント)があります。ファイルをDjangoテンプレートから添付ファイルとしてダウンロードすると、firefoxで動作しません
オブジェクトの辞書表現は次のとおりです。テンプレートで
{
'reason_phrase': u'OK',
'_handler_class': None,
'_headers': {'content-length': ('Content-Length', '21'),
'content-type': ('Content-Type', 'text/plain'),
'content-disposition': ('Content-Disposition', 'attachment;
filename="upload_file.txt"')
},
'_charset': None,
'_closable_objects': [],
'cookies': <SimpleCookie: >,
'closed': False,
'_container': ['Upload to file\n']
}
ビューは、ハイパーリンクのクリック時にレンダリングされます。ここでは
<a href="{% url "download-attachment" certificationID=certificationID fileID=attachment.id %}" download> {{attachment.name}}</a>
certificationIDとファイルIDは、ダウンロード用のURLのパラメータです。アタッチメントビュー。ファイルは、応答の内容-Dispositionヘッダーで指定されたファイル名の添付ファイルとしてダウンロードされるハイパーリンクをクリックすると上のChromeで
、。 Firefoxで
は、ファイルのダウンロードに失敗します。ファイアウォールでのファイルダウンロードの作業を支援する必要があります。
それはどのように* *失敗しましたか?そして、このコンテンツを提供するためにDjangoで何をしていますか? –
@DanielRoseman Djangoでは、django.http.response.HttpResponseクラスのオブジェクトを作成しています。そのオブジェクトをビューから戻します。 '応答=のHttpResponse(データ、CONTENT_TYPE = "text/plainの") 応答[ "コンテンツ説明"] = "ファイル転送" 応答[ "コンテンツの廃棄"] = "アタッチメント;ファイル名= \" % %self.cweResponse.get( "file_name") レスポンス['Content-Length'] = self.cweResponse.get( "size") 返信返信「 Firefoxのダウンロードリストには、失敗したファイル名は開けません。 –