我有一個關於在HTTP MIME附件發送一個疑問:內容傳輸編碼的MIME頭與HTTP
在HTTP規範以下爲引用:
「C.4無內容 - 轉移 - 編碼:HTTP不使用RFC 1521的Content-Transfer-Encoding(CTE)字段。從MIME兼容協議到HTTP的代理和網關必須先刪除任何非標識CTE(「quoted-printable」或「base64」)編碼將響應消息傳遞給HTTP客戶端。從HTTP到MIME兼容協議的代理和網關負責確保該消息採用正確的格式,並對該協議進行安全傳輸編碼,其中「安全傳輸」由所使用的協議的限制來定義。這樣的代理或網關應該用適當的Content-Transfer-Encoding來標記數據,如果這樣做會提高在目標協議上安全傳輸的可能性。「
這是否意味着專門用於通過http發送MIME附件,我們不應該將content-transfer-encoding指定爲quoted-printable或base64?
此外,當我通過其他傳輸如JMS或通過Mail發送附件時,conetent-transfer-encoding的行爲是什麼?例如在SOAP over JMS消息中?
還發現以下與RFC 4130相關的內容:
「5.2。未使用的MIME頭和操作 5.2.1。 HTTP傳輸中未使用內容傳輸編碼 HTTP可以處理二進制數據,因此不需要使用MIME [1]的內容傳輸編碼。這一區別在[3],第19.4.5節中討論。但是,二進制或8位的內容傳送編碼值是允許的,但不是必需的。這個頭文件的缺失不能導致事務失敗。內容傳輸編碼的AS2消息體內的MIME正文部分也是允許的。「
所以我基本上完全混淆了特定於HTTP協議的MIME附件的行爲,並希望得到它的行爲澄清。