内部 Web 应用程序中的自定义 http header 是否有任何公认的命名约定?
严格意义上的内部意味着带有此 header 的请求永远不会通过公共(public)互联网传输。自由意义上的内部意味着虽然请求可以通过公共(public)互联网传输,但服务器端点始终是一台受特定供应商控制的机器。
我知道 this SO article和 RFC 6648 .
然而,后一个引用中转发的推理并不能完全说服我,因为它说:
2. SHOULD employ meaningful parameter names that they have reason to
believe are currently unused.
3. SHOULD NOT prefix their parameter names with "X-" or similar
constructs.
嗯,X-<meaningful_name>
传达 <meaningful_name>
建议的语义+ 该 header 既未由官方标准维护机构分配也未在官方标准维护机构注册的信息,因此第 2.、3. 项显得有些矛盾。
当然,我可以使用其他名字,例如 Vnd-
或公司/产品名称前缀,甚至像 Foo-
这样的习惯术语.反对 X-
的论点但是,前缀仍然适用。
另一方面,仅使用“有意义的名称”会在未来与官方标准认可的相同术语或产品将成为处理管道一部分的其他公司发生冲突。
附言: 如果这个问题被认为过于不具体,我们深表歉意。我很乐意将它移到其他更合适的地点。
最佳答案
是的,有一个公认的命名约定。
VND.{domain}.{key}
示例:VND.wreckingballmedia.com.runtime = 102ms
您可以在这里阅读官方推荐:https://www.rfc-editor.org/rfc/rfc6648
它基本上说每个人都认为“X-MyNonStandardHeader = Value”是个好主意,但仍然存在命名冲突。它说你可能会逃脱 UUID 或其他东西,但是,他们推荐 VND.domain.key
格式。
关于web-services - 内部 Web 应用程序的自定义 HTTP header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18002363/