問題

想要強制下載資源而不是直接在Web瀏覽器中呈現的Web應用程式在表單的HTTP響應中釋出Content-Disposition頭:

Content-Disposition: attachment; filename=FILENAME

filename引數可以用來建議瀏覽器下載資源的檔案的名稱. RFC 2183 (Content-Disposition),但是,第2.3節(Filename Parameter)中的狀態,檔名只能使用US-ASCII字元:

當前[RFC 2045]語法限制 引數值(因此) c# – Content-Disposition檔名)到 US-ASCII.我們認識到 允許任意 檔名中的字符集,但它是 超出本檔案的範圍 確定必要的機制。

然而,有經驗證據表明,當今大多數流行的Web瀏覽器似乎允許非US-ASCII字元(由於缺乏標準)在檔名的編碼方案和字符集規範上存在異議.然後問題是,如果檔名“naivefile”(沒有引號,第三個字母是U 00EF)需要編碼到Content-Disharestion中,流行瀏覽器使用的各種方案和編碼是什麼?

為了解決這個問題,流行瀏覽器是:

  • Firefox
  • Internet Explorer
  • Safari
  • Google Chrome
  • 歌劇

  最佳答案

討論了這個問題,包括與瀏覽器測試和向後相容性的連結,擬議的 RFC 5987 ,“超文字傳輸協議(HTTP)頭欄位引數的字符集和語言編碼”。

RFC 2183 表明此類標頭應該按照 RFC 2184 編碼,這已被 RFC 2231 覆蓋了上面的 RFC 草案。

  相同標籤的其他問題

browserhttp-headersspecifications