所有回答列表(2)
最代码官方 LV168
2015年2月28日
浏览器对服务端响应Content-Type的处理方式不同:
文件类型 | Content-Type 类型 | |
---|---|---|
常见类型 | 文本 | text/plain |
二进制流 | application/octet-stream | |
RAR 压缩包 | application/x-rar-compressed | |
Zip 压缩包 | application/zip | |
Flash 文件 | application/x-shockwave-flash | |
QuickTime 视频 | video/quicktime | |
MP4 视频 | video/mp4 | |
MP3 音频 | audio/mpeg | |
JPEG 图片 | image/jpeg | |
GIF 图片 | image/gif | |
PNG 图片 | image/png | |
书写有误类型 | 数据 | application |
音频 | audio | |
视频 | video | |
图像 | image | |
浏览器不可识别类型 | 自定义类型 | helloworld |
分别以不同 HTTP Content-Type 报头类型运行此段代码,在不同的浏览器环境中的表现如下:
IE6 IE7 IE8 | Firefox | Chrome | Safari | Opera | |
---|---|---|---|---|---|
text/plain | 显示文件内容 | 显示文件内容 | 显示文件内容 | 显示文件内容 | 显示文件内容 |
application/octet-stream | 显示文件内容 | 下载文件 | 下载文件 | 下载文件 | 显示文件内容 |
application/x-rar-compressed | 下载文件1 | 下载文件 | 下载文件 | 下载文件 | 下载文件 |
application/zip | 下载文件1 | 下载文件 | 下载文件 | 下载文件 | 下载文件 |
application/x-shockwave-flash | 试图显示 Flash | 试图显示 Flash | 试图显示 Flash | 试图显示 Flash | 试图显示 Flash |
video/quicktime | 下载文件 | 下载文件 | 下载文件 | 下载文件 | 下载文件 |
video/mp4 | 下载文件 | 下载文件 | 试图播放视频3 | 下载文件 | 下载文件 |
audio/mpeg | 下载文件 | 下载文件 | 试图播放视频3 | 下载文件 | 下载文件 |
image/jpeg | 显示文件内容 | 试图显示图片2 | 试图显示图片 | 试图显示图片 | 试图显示图片 |
image/gif | 显示文件内容 | 试图显示图片2 | 试图显示图片 | 试图显示图片 | 试图显示图片 |
image/png | 显示文件内容 | 试图显示图片2 | 试图显示图片 | 试图显示图片 | 试图显示图片 |
application | 下载文件1 | 显示文件内容 | 显示文件内容 | 下载文件 | 显示文件内容 |
audio | 下载文件1 | 显示文件内容 | 显示文件内容 | 下载文件 | 显示文件内容 |
video | 下载文件1 | 显示文件内容 | 显示文件内容 | 下载文件 | 显示文件内容 |
image | 下载文件1 | 显示文件内容 | 显示文件内容 | 下载文件 | 显示文件内容 |
helloworld | 下载文件1 | 显示文件内容 | 显示文件内容 | 下载文件 | 显示文件内容 |
【注1】:这几种 Content-Type 类型在测试环境中的 IE6 IE7 IE8 浏览器弹出的下载对话框提示中,均显示“不可识别类型”。
【注2】:Firefox 会将 URL 和一些错误信息输出在图片格式中显示。
【注3】:Chrome 试图使用 VIDEO 标记直接显示这两种格式的视频。
由表可见:
- IE6 IE7 IE8 对于可以识别的非视频、音频流内容均会嗅探其内容,并且根据内容是否正常再决定如何输出显示;
(关于嗅探的扩展阅读:CH9002: IE6 IE7 IE8 未按预期方式处理 content-type 为 text/plain 的内容) - Firefox Chrome 对于未知 Content-Type 的内容均直接显示其内容,其他类型则以直接以最合适的方式处理;
- Opera 对于可以识别的视频、音频流内容会直接提示下载,图片类型和 Flash 类型会试图显示他们,未知 Content-Type 的内容均直接显示其内容则直接显示其内容,但在显示内容前不会嗅探其中的 HTML 标记。
参考:
http://www.w3help.org/zh-cn/causes/CH9001
评论(0)
最佳答案
- 等 最代码怎么获取牛币啊?
- 完 谁来告诉我最代码上线的时间,答对者给5牛币,先来先得
- 等 牛友们,大家好,你们做程序员多久了?现在还好吗?
- 完 在微信打开的页面里进行app下载
- 等 最代码2014年欢乐聚声会
- 完 mysql如何查询表数据并且对3个字段降序的SQL?
- 完 最代码牛币机制改革
- 完 成功的在bae上使用了自定义运行环境 jetty+nginx的组合,大家对jetty+nginx优化有哪些心得?
- 完 进来分享一下各位牛牛是如何加入最代码大家庭的?
- 等 为什么java BufferedImage类处理大图直接抛出内存溢出的异常?
- 等 最代码是否开发手机app客户端?
- 完 java程序员学习哪些java的技术?java有哪些框架?都能做哪方面的开发?
- 等 php格式网页文件怎么运行?
- 等 Java volatile值获取的问题
- 等 前端vue,拦截了登录后台后,返回的token,requests拦截token,但是发送请求的时候,就出现跨越异常
- 等 大专本科计算机科班怎么找到Java工作?
- 等 eclipse怎么把三个java swing游戏项目合成一个项目?
- 完 伙伴们,大家都有什么好的解压方式么,分享一下~
- 完 三四线城市,6、7k,运维工作,索然无味,想去辞职上培训,各位牛牛有什么建议嘛
- 等 jsp页面输入中文变成问号
- 等 JPA在线上运行一段时间后报错Caused by: java.lang.IncompatibleClassChangeError: null
- 等 PHP 这个规则用preg_match_all怎么写
- 等 大佬们,有没有知道Alfresco如何配置LDAP登录呢?
- 等 php的install目录是框架带的吗?
相关问答
- 完 html页面与html页面之间是如何实现传值?
- 完 请教前辈一个FreeMarker静态化html页面的问题
- 等 如何通过jquery获取js动态append到html页面的dom属性?
- 完 java生成html静态页面后如何显示用户登录提示?
- 完 微信朋友圈,分享外链HTML网页为什么出现乱码?Safari打开页面显示正常
- 等 html该如何学习?
- 完 html网页如何在手机端访问网页让两边显示全部?
- 等 菜鸟关于html代码结构是否使用正确得问题。
- 完 如何把html textarea最右边那个多余的列去掉?
- 等 html select标签下拉框中怎么指定只让显示5个?
- 等 轮播图下面的html a标签长度如何控制?
- 完 html下拉框通过js如何选中区分颜色?