浏览器如何判断是下载还是显示

2023-12-29

我有一个 Web 资源,它返回 json 内容Content-Type:application/json。通常内容会直接显示在浏览器中,但有时不会,而是显示下载提示。

我知道有一个标题Content-Disposition:inline/attachment它可以明确告诉浏览器是否下载或显示。但是如果我不指定这个标头,浏览器如何决定?它的策略是什么?


来自 Mozilla 的文件类型和下载操作 http://kb.mozillazine.org/File_types_and_download_actions(强调我的):

当您单击链接下载文件时,MIME 类型决定采取什么操作。如果您看到“正在打开”对话框,询问您是否要保存文件或使用指定的应用程序打开它,这通常意味着您的 Mozilla 应用程序无法在内部处理 MIME 类型,没有安装和启用可以处理该类型的插件,并且您之前没有选择始终用于该类型文件的下载操作或帮助应用程序.

该浏览器已预先配置为处理图像等基本格式。插件(可能与浏览器捆绑在一起)添加了对各种常见文件类型(如 pdf)的处理。还可以有“帮助应用程序”,这意味着浏览器自动下载文件并将文件转发到应用程序(例如打开 torrent 客户端的 torrent 磁力链接)

其他一切,它都会询问,直到用户绑定默认操作(如果Content-Type is application/octet-stream,您无法设置默认操作)。其他浏览器的工作原理相同。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

浏览器如何判断是下载还是显示 的相关文章

  • 发送 HTTP 标头后,服务器无法附加标头

    我在我的 ASP NET C Web 应用程序中间歇性地收到此异常 发送 HTTP 标头后 服务器无法附加标头 这是由于应用程序在发送页面后将内容附加到页面响应标头而引起的 我不确定为什么它是间歇性的 但我需要做的是在修改标题之前执行检查
  • 如何用 C 生成 HTTP Content-Type 标头?

    所以我正在做一项网络任务 用 C 语言生成一个基本的 HTTP 1 0 Web 服务器 我已经弄清楚了大部分内容 但要求之一是它正确填充标头中的 Content Type 字段 并且我似乎找不到任何方法来自动执行此操作 我已经在使用 fst
  • 在特定 WordPress 页面上发送 404 状态代码?

    我需要在 WordPress 的特定页面上发送 404 状态代码 该页面未使用 404 php 模板 最好 我想在我的主题文件中执行此操作 而不是使用 htaccess 这是我所拥有的不起作用的东西 function my 404 if i
  • 用于多浏览器测试的 Specflow 的 DataSource 属性

    我有一些 C 中的 Web ui 测试 这些测试是通过 browserstack 中的 selenium 执行的 目前 这些只是简单的单位毫秒测试 它们是在不同的浏览器上执行的 我想将测试移植到specflow 但我真的不知道如何进行多浏览
  • 浏览器什么时候开始支持每个标签多个类?

    在当前的 Web 浏览器中 您可以在 HTML 标记中使用多个 css 类 例如 div class style1 style2 style3 foo bar div 但这并不总是有效 主要浏览器从哪些版本开始正确支持此功能 Wayne K
  • 浏览器选项卡存储?

    是否有一个浏览器存储只能由创建它的页面使用 我正在制作一个 TamperMonkey 脚本来自动化我的工作 当打开来自特定域的页面时会触发它 然后 它会在所述页面中找到特定链接 同一域 并在同一选项卡中将其打开 如果新打开的页面符合条件 则
  • 避免 JSF Web 应用程序上的后退按钮

    我正在显示非常敏感的数据 用户从我的服务器注销后 我不希望其他用户能够看到点击浏览器后退按钮的数据 我怎样才能实现这个目标 默认情况下 浏览器的后退按钮根本不会向服务器发送 HTTP 请求 相反 它从浏览器缓存中检索页面 这本质上是无害的
  • 自定义用户代理字符串或标头,无需修改 cordova 库

    我有一个与 ASP NET MVC Web 应用程序交互的 Android Phonegap Cordova 应用程序 我正在尝试检测服务器端是否从浏览器或我的 Phonegap Cordova 应用程序加载网页 我考虑过以下几种方法 更改
  • Google 地图视图无法在模拟器上显示

    您好 我正在尝试在 Android 模拟器中显示地图 但它无法在地图视图中显示谷歌地图 并且也不从 Android 模拟器上的浏览器连接 www google com 那么是否有关于在模拟器上运行互联网的任何设置 谁能帮我解决这个问题 尝试
  • 在 Asp.net Web API 中处理 CORS 预检

    我的架构中有三个应用程序 它们位于同一服务器上 但具有不同的端口号 A Token Application port 4444 Asp net WebApi B API Application port 3333 Asp net WebAp
  • 无法处理 ajax 中的 302 重定向,为什么? [复制]

    这个问题在这里已经有答案了 我有一个使用表单身份验证用 asp net mvc 编写的后端服务器 当用户未通过身份验证时 服务器将自动发送 302 重定向到登录操作并返回登录页面 在客户端 我有一个项目列表 只有经过身份验证的用户才能访问此
  • Chrome 的萤火虫

    谁能推荐一个类似于 Firebug 的不错的 Google Chrome 扩展程序 我确实看到这里有几个类似的问题 但答案似乎非常过时 Thanks It s built in Press Ctrl Shift I Or Tools gt
  • 为什么网络浏览器在通过 Enter 键激活时不应用 CSS :active 状态?

    大多数 Web 浏览器都提供键盘快捷键来与 DOM 交互 e g Tab将焦点转移到下一个可聚焦元素 Alt Tab将焦点转移到前一个可聚焦元素 Enter激活当前聚焦的元素 我现在发现许多流行的浏览器 Firefox Chrome Saf
  • PHPQuery WebBrowser 插件 - 使用 cookies

    我正在尝试使用 PHPQuery 的 WebBrowser 插件登录网站 我能够成功登录 但我不确定如何重用上一次调用中的 cookie 到下一次调用 client phpQuery browserGet https website com
  • 解析 HTTP 标头值:引用、RFC 5987、MIME 等

    让我困惑的是 HTTP 标头的解码values 示例标头 Some Header quoted string utf 8 en Weirdness 罐头value s被引用 a 的编码怎么样 本身 是 有效的引号字符 分号有什么意义 HTT
  • 在 IE 中,jquery 的“X-Requested-With”标头变为“x-requested-with”(小写)

    为什么要转换为小写 在 Firefox 中 它的形式为 X Requested With 在 IE 中 它是 x requested with HTTP 方法应该区分大小写 但 HTTP 标头应该不区分大小写 根据RFC 2616 http
  • 为什么单击拖动手柄不会夺走文本焦点?

    我有一个带有一些文本的 divhttp jsfiddle net MuCeD 2 http jsfiddle net MuCeD 2 如果我双击 div 中的 sample 一词 它就会突出显示 如果我然后单击页面上的其他任何位置 文本就会
  • Azure:列出操作系统映像

    我是 Windows azure 新手 我看过这个文档 http msdn microsoft com en us library windowsazure jj157191 aspx 对我来说它有效 在画廊上列出图像 https mana
  • 服务器返回网页 404,但页面在浏览器中显示正常 - 为什么?

    一个奇怪的网页横亘在我面前 作为一名开发人员 我必须解开这个谜团 在任何浏览器中访问网页时 一切似乎都很正常 网页按预期显示 但是当查看控制台时 服务器实际上返回了 404 状态代码 那么浏览器为什么要渲染页面呢 查看正文显示返回了有效的
  • 在 MSHTML IE8 中修改 DOM 时是否会触发一个事件?

    尝试检测 MSHTML 中的 DOM 中是否添加或删除了新元素 有这样的事件会火吗 http msdn microsoft com en us library aa741877 v VS 85 aspx http msdn microsof

随机推荐