我正在创建一个 Web 服务,它是另一个 Web 服务的网关。我正在使用 Spring Integration 框架,特别是 Http Inbound Gateway
来接受传入请求。当触发 reply-timeout
时,返回 200 状态码。理想情况下,我想返回 504,因为我的 Web 服务没有收到与我通信的其他 Web 服务的及时回复。
<int-http:inbound-gateway request-channel="authorizationRequestsChannel"
reply-channel="myReplyChannel"
path="/endpoint"
reply-timeout="30000"
supported-methods="POST" />
长话短说
当回复 channel 超时时,inbound-gateway
返回 200 状态代码。是否可以将状态代码设置为另一个值?
最佳答案
不直接。
但是,你可以添加一个错误 channel ;并在下游组件上设置超时。当流程抛出异常时将调用错误流程,并且错误流程可以返回带有状态代码 header 的消息。
我们将研究添加一种机制来自定义超时状态代码。
我打开了一个JIRA Issue .
关于java - 为入站网关回复超时设置 HTTP 状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31611405/