RESTTemplate等待API响应

3
在我的Spring应用程序中,我使用RESTTemplate从外部API获取一些信息。这个API要求当你发出请求时,必须等待它的响应,直到你发出另一个请求。所以我想知道如何做到这一点。当然不能使用计时器或类似的东西,因为这个API的响应时间每次都不同。
不幸的是,这个应用程序需要使用RESTTemplate,我无法改变它。
2个回答

2
您可以在单例 bean 中使用标志来实现此功能。在调用服务之前,检查它是否为“false”。如果是“false”,则将标志设置为“true”并调用服务。在退出之前,请将标志设置为“false”。
因此,当“flag == true”时,服务正在进行,否则您可以放置新请求。

我真的不明白你怎么能仅使用布尔值连接到外部API... - fonZ
1
@JonathanCruz 因为他正在使用RESTTemplate,所以对外部API的调用可能类似于 String result = restTemplate.getForObject("...。他想确保在触发用户可以触发的另一个调用之前没有挂起的请求。因此,在调用之前只需检查某个静态类中设置的标志,调用前设置标志并在调用后清除它。因此,在调用API之前,如果他发现标志为true,则可以要求用户稍后再试。 - basiljames

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接