如何服务.RTFs

时间:2009-08-28 00:06:54

标签: ms-word content-type rtf

我支持显示数据库报告的Web应用程序。有时,报告将包含附件(通常也是存储在数据库中的图像/文档)。

我们通过动态.htm资源提供附件,该资源从数据库中流式传输附件,并根据内容类型填充内容类型(我们支持PDF,RTF和各种图像格式)

对于RTF,我们遇到了一个问题。似乎很多Windows用户默认没有“application / rtf”内容类型的关联(他们有* .rtf文件扩展名的关联)。因此,单击指向附件的链接在Internet Explorer 6中不起作用。

返回'application / msword'作为内容类型似乎使RTF在点击链接时可见,但仅适用于安装了MS Office的用户(某些用户不会安装此用户,并将使用备用RTF阅读器,如OpenOffice)。

此应用程序是公开访问的,因此我们无法控制用户的计算机设置。

以前有人解决过这个吗?如何?谢谢!

3 个答案:

答案 0 :(得分:4)

使用application/octet-stream内容类型强制下载。一旦下载,它应该可以在注册的任何处理.rtf文件中查看。

答案 1 :(得分:3)

Content-Type标题外,您还需要添加以下内容:

Content-Disposition: attachment; filename=my-document.rtf

答案 2 :(得分:0)

Wordpad(几乎每台Windows机器上都可以)查看RTF文件。是否有“应用程序/ wordpad”内容类型?

或者,鉴于RTF文件的罕见性,您最好的解决方案可能是使用服务器端组件打开RTF文件,将其转换为其他格式(如PDF或直接HTML),并将其提供给请求客户。我不知道你在服务器端使用的是哪种语言/平台,所以我不知道该告诉你使用什么语言/平台。