web-services - 内部 Web 应用程序的自定义 HTTP header

标签 web-services http http-headers

内部 Web 应用程序中的自定义 http header 是否有任何公认的命名约定?

严格意义上的内部意味着带有此 header 的请求永远不会通过公共(public)互联网传输。自由意义上的内部意味着虽然请求可以通过公共(public)互联网传输,但服务器端点始终是一台受特定供应商控制的机器。

我知道 this SO articleRFC 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/

相关文章:

java - 在哪里放置虚拟 Web 服务实现?

java - 客户端找不到 {} 的分派(dispatch)方法

web-services - 在不影响 REST 子资源的情况下更新资源的正确 HTTP 方法

java - 在java中如何比getResponseCode更快地获取http响应代码?

php - 如何识别curl请求

c# - 连接到安全 WebService

ios - 使用 AFNetworking 2.0 对数据进行 PUT 请求

javascript - 如何在 Javascript 中通过 Firefox XPCOM 获取可靠的 HTTP 消息

Android- POST 多部分表单数据

php - URL 中带有特殊字符的 HTTP 状态代码