Browser 为什么浏览器会以两种版本显示消息正文,十六进制版本和非十六进制版本?

Browser 为什么浏览器会以两种版本显示消息正文,十六进制版本和非十六进制版本?,browser,hex,browser-cache,http-caching,hexdump,Browser,Hex,Browser Cache,Http Caching,Hexdump,浏览器在缓存中显示消息正文,如下所示: 00000000: 20 20 20 20 3c 21 44 4f 43 54 59 50 45 20 68 74 <!DOCTYPE ht 00000010: 6d 6c 3e 0a 20 20 20 20 3c 68 74 6d 6c 3e 0a 20 ml>. <html>. 00000020: 20 20 20 3c 68 65 61 64 3e 0a 20 20 20 20 20 20 &

浏览器在缓存中显示消息正文,如下所示:

00000000:  20 20 20 20 3c 21 44 4f 43 54 59 50 45 20 68 74      <!DOCTYPE ht
00000010:  6d 6c 3e 0a 20 20 20 20 3c 68 74 6d 6c 3e 0a 20  ml>.    <html>. 
00000020:  20 20 20 3c 68 65 61 64 3e 0a 20 20 20 20 20 20     <head>.      
00000030:  20 20 3c 6d 65 74 61 20 63 68 61 72 73 65 74 3d    <meta charset=
00000040:  22 75 74 66 2d 38 22 20 2f 3e 0a 20 20 20 20 20  "utf-8" />.     
00000050:  20 20 20 3c 74 69 74 6c 65 3e 54 65 73 74 3c 2f     <title>Test</
00000060:  74 69 74 6c 65 3e 0a 20 20 20 20 3c 2f 68 65 61  title>.    </hea
00000070:  64 3e 0a 20 20 20 20 3c 62 6f 64 79 3e 0a 20 20  d>.    <body>.  
00000080:  20 20 20 20 20 20 54 65 73 74 20 63 61 63 68 69        Test cachi
00000090:  6e 67 20 62 65 68 61 76 69 6f 72 20 2e 2e 2e 0a  ng behavior ....
000000a0:  20 20 20 20 3c 2f 62 6f 64 79 3e 0a 20 20 20 20      </body>.    
000000b0:  3c 2f 68 74 6d 6c 3e                                      </html>
00000000:20 20 20 3c 21 44 4f 43 54 59 50 45 20 68 74。
00000020:20203C686561643E0A2020。
00000030:20 20 3c 6d 65 74 61 20 63 68 61 72 73 65 74 3d。
00000050:20 20 20 3c 74 69 74 6c 65 3e 54 65 73 74 3c 2f测试。
00000080:20 20 20 20 54 65 73 74 20 63 61 63 68 69测试卡奇
00000090:6e 67 20 62 65 68 61 76 69 6f 72 20 2e 2e 2e 0a ng行为。。。。
000000 A0:20 20 3c 2f 62 6f 64 79 3e 0a 20 20。
000000 B0:3c 2f 68 74 6d 6c 3e
为什么浏览器在两个版本中显示消息正文?(十六进制版本和非十六进制版本。)

例如,图像:浏览器显示十六进制版本和非十六进制版本。
如果在某些情况下,您只能显示十六进制版本,而无法显示非十六进制版本(因为编码或源代码或其他原因),那么我会理解的。但是有这样的情况吗?我如何重现它们?

数据不是存储为“十六进制字节字符串”。没有这样的事

数据是以这种格式显示的,因为它是一种可访问的、某种程度上可读的显示各种数据的方法

文本文件将只是可读的。

所有其他格式都可以相对轻松地检查其标题。

是什么让您认为正文存储为“十六进制字节字符串”?什么是“十六进制字节字符串”?这是一个严重的误解。使用
hextump
工具,您可以从任何文件中获得相同类型的输出。这只是一个文本表示。@MaartenBruins:正确,他们是用这种格式显示的。这并不意味着它是以那种格式存储的。你问浏览器为什么要以十六进制字符串存储数据,这是不正确的。如果你想问为什么它会这样显示数据,那么请编辑你的问题。恐怕不是那么简单。看,如果我的答案在某种程度上是错的,请告诉我。我很乐意更正答案。我看不出有什么问题,除了“没有这样的事情”可能会被误解为“没有十六进制字节的字符串这样的事情”,但即使这样也有点牵强。我不能投反对票。是的,好吧,有一个字符串包含字节的十六进制表示。人们可以将这种字符串称为“十六进制字节字符串”。尽管如此,它并不是一种真正的“数据格式”。我想了想,但这并不能回答我的问题。你在其他评论中说:“他们将如何显示图像?”我刚刚测试了它,他们显示了两列。一个是“十六进制字节字符串”,另一个不是。所以问题是。。。为什么他们用两种不同的方式显示缓存内容?而不仅仅是非十六进制版本?你提出了以下论点:“它们将如何显示图像?”我的回答是:只有非十六进制版本。您可以在浏览器缓存(图像)的右栏中检查该版本。可能是因为没有更多内容要添加?该缓存查看器不会根据文件类型更改其显示格式。您看到的格式对于文件检查器来说非常常见。这基本上是惯例。