【问题标题】:What MIME type should I send with a legacy DOS image type that must be saved and not displayed?我应该发送哪种 MIME 类型以及必须保存且不显示的旧 DOS 图像类型?
【发布时间】:2019-06-09 00:20:55
【问题描述】:
我需要允许我的用户从我的网络服务器下载 BSAVE“图像”。 BASVE“图像”文件是一段 RAM 的原始转储,其中包含主要用于 BASIC 编程的屏幕数据。没有浏览器可以显示此图像,而是通过将其 BLOAD 回 RAM 来“显示”。
我不相信 application/octet-stream 是正确的,因为它不是可执行文件,但发送任何图像/* MIME 类型都会不准确且令人困惑。将文件作为文本发送也会不准确且令人困惑。
哪种 MIME 类型允许下载/保存文件,同时又是文件及其内容的最准确描述符? application/octet-stream 是最可能正确的错误答案吗?
【问题讨论】:
标签:
http
http-headers
mime-types
basic
【解决方案1】:
application/octet-stream 可以(并且通常是)用于任何原始数据,它不仅仅用于可执行文件(通常是application/x-msdos-program、application/x-msdownload、application/vnd.microsoft.portable-executable 等)。它的名字字面意思是它是一个“八位字节流”(又名字节)。名称的application/... 部分不是指可执行应用程序,它实际上意味着数据通常由 应用程序使用。
您还应该包含Content-Disposition: attachment; filename="..." 响应标头,以向客户端指示数据应保存到文件而不是显示在浏览器中。
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="image.bsave"