2009-08-26 57 views
0

我很好奇gmail(在他们的web客户端)提供一个“查看”和“下载”链接的方式背后的方法是什么,就像附加的.jpg文件一样。我发现浏览器通常会根据文件的扩展名或MIME类型来决定如何处理这些事情,但在这种情况下,您有一个文件和两个链接,并且这两种行为都是并行提供给用户的。 我假设它是一个服务器配置的东西,但我想知道那是什么,完全(或者如果我错了,他们是如何在客户端上做的)。gmail如何规定是否要呈现或下载附件?

回答

2

它可能只是在为“下载”链接服务器级别设置内容处置头(强迫另存为/打开对话框),并允许浏览器正常处理它的查看链接。

+0

当然如你所述。 – dusoft 2009-08-26 08:55:58

1

它几乎可以在服务器上处理。 “查看”链接适用于任何可以在浏览器中查看的文件(如图像)以及任何可以使用Google Apps(MS Office文档,pdf)查看的文档。

要强制下载而不是在浏览器中查看,您需要将“content-disposition”标题设置为“attachment”。有关如何执行此操作的示例,请参阅this。谷歌会在服务器端做这样的事情。

+0

正确的...我更好奇他们是如何强制下载对话框,弹出了由浏览器显示的认可文件。当你简单地链接到一个JPG文件时,它只是被绘制出来......他们如何强制它像一个不被识别的文件类型? – 2009-08-26 07:43:17