我在服务器上生成一个pdf,我希望浏览器尝试打开选项卡(那些可以这样做的浏览器),而不是下载。
我很确定这是否有一些标题,但我无法找到它。是否可以控制用户的浏览器是否显示或下载您的资产?
答案 0 :(得分:1)
Acrobat Reader X在Edit>下有一个复选框。偏好>无论浏览器插件的状态如何,都可以通过Internet启用或禁用浏览器中的视图。
如果检查没问题,或者你有更新的版本,你可以检查浏览器中的插件是否有效,每个浏览器都有不同的插件。
快速检查是在浏览器中打开本地pdf文件,例如file:// localhost / C:/dir1 /.../file.pdf,如果Adobe Reader有正确的检查并且插件正在运行该文件将在浏览器中显示,否则,即使它是本地文件,浏览器也会要求一个文件夹下载它。
答案 1 :(得分:0)
所以在我的具体情况下,由于编码一个常量错误,我发错了content-type
(感谢@admdrew指出我正确的方向)。
然而,答案是确实有一个标题 - 至少在使用pdf时,至少会建议Chrome是否应该打开或下载文件。 This header is Content-Disposition
。在我的情况下设置它:
Response.Headers["Content-Disposition"] = @"attachment; filename="foo.pdf"
触发了下载,同时省略了触发页内打开。
此外,上述链接陈述
如果在使用application / octet-的响应中使用此标头 - 流内容类型,隐含的建议是用户代理 不应该显示响应,而是直接输入“保存响应” 为...'对话框。
虽然我发现使用Content-Type: application/pdf
在两种情况下都运行良好。