设置content-type,octet-stream和text/csv的区别

问题描述 投票:0回答:3

使用

response.setContentType("application/octet-stream");
而不是
response.setContentType("text/csv");
来设置 csv 文件的内容类型有什么区别,它们似乎都产生相同的结果。哪种方法更受青睐?只是好奇。

java servlets mime-types
3个回答
8
投票

某些浏览器,特别是IE,完全忽略内容类型标头,并根据文件扩展名在应用程序中打开响应。在那些浏览器中,这可能并不重要。

但是,text/csv 是首选内容类型,并且应该适用于所有浏览器。 “application/octet-stream”非常通用,并且没有给出任何关于应使用哪种类型的应用程序来打开结果的提示。

例如,如果您要返回 MS Excel 文件,则可以使用 application/vnd.ms-excel 来更具体。由于 CSV 不依赖于某一特定应用程序,因此首选 text/csv。


1
投票

RFC
有 2014 年
text/csv
的官方文件。

对于 CSV 文件,官方首选使用

text/csv

https://www.rfc-editor.org/rfc/rfc7111.html

https://www.rfc-editor.org/rfc/rfc4180.html

https://www.iana.org/assignments/media-types/text/csv


0
投票

CSV 文件没有官方 RFC 文档,但它们是纯文本文件,因此最好使用的 MIME 类型是

text/plain

CSV 文件有特定于操作系统的 MIME 实现。例如,Microsoft 使用

application/vnd.ms-excel

有关其他 MIME 类型,请参阅此网站:http://webdesign.about.com/od/multimedia/a/mime-types-by-content-type.htm

© www.soinside.com 2019 - 2024. All rights reserved.