WHI*_*LOR 5 optimization json gzip web-applications asp.net-web-api
关于现代 Web 应用程序和浏览器。当从服务器发送到客户端(反之亦然)大对象(1-10MB 原始文本 JSON 大小)时,缩短属性名称是否有意义:
people: {
name: 'Alex'
age: '999'
}
Run Code Online (Sandbox Code Playgroud)
例如:
p: {
n: 'Alex'
a: '999'
}
Run Code Online (Sandbox Code Playgroud)
如果我们在数据中有大量这样的对象?
因此,我们可以显着减少原始数据大小(最多 2-3 倍)。但是如果使用 GZip 有意义吗?
这有一定道理,具体取决于您的情况。
显然,如果值相当大,则缩短密钥没有多大意义,但如果您有非常大的 JSON 对象且值相对较小,则较短的密钥可以节省系统上的存储空间和传输时间。
但当然,您确实需要谨防不必要地“混淆”JSON,从而导致编码错误。特别是,最好在开发过程中使用有意义的密钥,然后在“发布”之前缩短它们(如果认为有必要)。
此外,如果使用 gzip(或类似的)压缩,则较短的密钥对压缩对象的大小几乎没有影响。