视频文件在Chrome与Firefox中响应显示差异及传输格式问询
问题解答
1. Chrome中显示的特殊字符是什么
那是二进制数据被当作文本解析后产生的ASCII乱码——因为浏览器开发者工具默认把未被识别为可渲染资源的响应按文本编码解析,而视频这类二进制文件的字节对应很多不可打印的ASCII字符,就会显示成一堆怪异符号。
2. 浏览器显示差异的本质
Chrome和Firefox开发者工具对二进制响应的可视化展示方式不同:
- Chrome直接把二进制字节按文本编码(比如UTF-8)解析,输出乱码;
- Firefox则自动将二进制数据转成base64字符串来展示,方便查看。
但这只是工具的显示逻辑,和实际传输的格式无关。
3. Content-Type设为video/mp4时的传输格式
当服务器正确设置Content-Type: video/mp4后,视频是以原始二进制格式传输的,不是base64字符串。base64是一种编码方式,会让数据体积增大30%左右,除非服务器特意做了base64编码后再传输(这种场景极少),否则都是直接传二进制。
4. PDF文件的相同情况
和视频完全同理:开发者工具的显示差异而已,实际传输的是PDF原始二进制数据,不是base64。
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

