Jam*_*mes 6 rest soap web-services http
我试图想出一种方法来使用HTTP响应消息来公开Web服务(REST和SOAP接口)的特定构建号.
为了清楚起见我并不是想控制客户端使用哪个版本的应用程序,因为这是由流量管理器和服务注册表处理的(也已经讨论过很多),我只想稍后调试什么版本已经使用或正在使用,例如,检查流量管理器是否正在提供正确的版本.
我花了很长时间查看HTTP规范,无法决定使用之间 Pragma
Pragma: application-version=1.0.0-SNAPSHOT
Run Code Online (Sandbox Code Playgroud)
使用额外的Server
标题
Server: Apache-Coyote/1.1
Server: MyService-1.0.0-SNAPSHOT
Run Code Online (Sandbox Code Playgroud)
用一个 Via
Via: MyService-1.0.0-SNAPSHOT
Run Code Online (Sandbox Code Playgroud)
或客户头
X-ApplicationVersion: 1.0.0-SNAPSHOT
Run Code Online (Sandbox Code Playgroud)
在我看来,使用a Via
或a Server
在语义上是不正确的,但是使用X-
标题会冒被代理删除但是Pragma
不受约束的风险,因此如果想以编程方式使用它则更难解析.
我也有一种感觉,多个Server
标题不会被尊重,但是没有办法用我正在使用的容器(JBoss)指定多个值.
这有先例吗?
有人有任何提示吗?
我应该闭嘴并使用一个吗?
在我看来,使用 Via 或 Server 在语义上是不正确的,但使用 X- header 会带来被代理丢弃的风险
我不会太担心 X 标头被丢弃。以对 eBay 查找服务的调用为例
响应包含此标头。
X-EBAY-SOA-SERVICE-VERSION: 1.12.0
Run Code Online (Sandbox Code Playgroud)
我见过很多 X 标头用于此目的。
归档时间: |
|
查看次数: |
2094 次 |
最近记录: |