如何在SOAP Web服务中设计标题信息?

时间:2019-04-29 07:26:30

标签: api web-services soap http-headers

在REST API中,响应中的某些额外信息位于HTTP标头中。例如,当API有速率限制时,响应的标头中可能包含X-RateLimit-Limit。这很简单。

但是,在SOAP 1.1 / 1.2 Web服务API中执行相同操作的等效性或约定是什么?

使用与X-RateLimit-Limit相同的示例,是否也应该像在REST API中一样将信息添加到SOAP响应的HTTP标头中?

1 个答案:

答案 0 :(得分:0)

目前尚未明确定义与guidelines相关的rate-limits

The SOAP headers包含与SOAP消息相关的特定于应用程序的信息。它们通常包含路由信息,身份验证信息,事务语义等。这些特定于SOAP消息,并且与SOAP使用的传输方式无关(在本文中:HTTP)。

HTTP headers定义HTTP事务的操作参数,例如要传输的内容的内容类型,内容的长度,客户端或代理的缓存指令等。这些参数特定于HTTP,并且独立于HTTP实际上是通过HTTP(在本例中为SOAP XML)传输的。

  

使用带有X-RateLimit-Limit的相同示例,是否也应该像在REST API中一样将信息添加到SOAP响应的HTTP标头中?

HTTP标头通常在Web服务器上停止,并且不应转到应用程序,如果应用此逻辑,则可以得出结论,SOAP1.1 / SOAP1.2应该由rate-limitweb-server,而不是API gateway。 同样,application对于rate-limitSOAP服务应该以相同的方式处理,而不是不同。像RESTcontent-typecontent-length等通常是encoding标头,而不是HTTP标头。

因此,SOAP应该是x-rate-limits的一部分。

我想从HTTP header Docusign中给一个example相同的HTTP标头,然后在SOAP service中发送X-rate-limit标头。

我认为这个问题可能没有非常明确的答案,但是我希望我能涵盖一些可以帮助他人的指针。