我写的关于如何组织是在一个HTTP请求发送的查询参数的规范,我想出了以下内容:请求大小VS服务器负载
所有参数与实体前缀,以他们属于一个例子“ab”,它被读作“实体a的b”,这样每个参数将被清楚地映射到相应的实体,但是如果存在共享查询参数的两个不同实体呢?以避免重复和请求大小我想出了以下微格式。要有一个名为shared
的请求范围实体,shared
的每个属性将表示在实体间共享的属性,例如,
POST /app/my/resource HTTP/1.1
a.p = v
b.p = v
c.p = v
d.p = v
这清楚地表明财产p
是其中a,b,c
共享和d
所以这可能是因为
POST /app/my/resource HTTP/1.1
shared.p = a:b:c:d%v
现在发送,请求比较小,我是有点更DRY,但是这给服务器增加了额外的负担,因为它必须解析字符串才能处理这些值。
也许在我的例子中,差异是微不足道的,我可以选择,但我想知道你对它有什么看法,你喜欢什么,也许请求的大小无关紧要,或者可能是当长度很短时,解析字符串并不是什么大问题,但是当我们扩大请求和字符串的大小时会发生什么,哪一个更好,什么是折衷?