使用response.setContentType("application/octet-stream");
代替response.setContentType("text/csv");
来设置csv文件的内容类型有什么不同,看起来它们都会产生相同的结果。哪种方法更优先?好奇。
答案 0 :(得分:5)
某些浏览器(尤其是IE)完全忽略内容类型标头,并根据文件扩展名在应用程序中打开响应。在那些浏览器中,它可能并不重要。
但是,text / csv是首选的内容类型,并且应该适用于所有浏览器。 “application / octet-stream”非常通用,并没有提供任何关于应该使用什么类型的应用程序来打开结果的提示。
例如,如果您要返回MS Excel文件,则可以使用application / vnd.ms-excel更具体。由于CSV不与某个特定应用程序绑定,因此首选text / csv。
答案 1 :(得分:0)
CSV文件没有正式的RFC
文档,但它们是一个平面文本文件,因此最好使用的MIME类型是text / plain。
There are OS specific MIME implementations for CSV files. For example Microsoft use application/vnd.ms-excel.
对于其他MIME类型,请参阅此网站:http://webdesign.about.com/od/multimedia/a/mime-types-by-content-type.htm