关于consul的HTTPApi

http://localhost:8500/v1/health/service/book?passing&wait=10s&index=145
后面的wait和index是什么意思?当我这个请求的index与上次返回值给的一样,貌似请求就会阻塞wait参数的时间,尝试了一下似乎大于等于这个index都会阻塞,这个api这样设计的意思是什么?

阅读 4.9k
2 个回答

看官方文档:Blocking Queries

有些接口可以等endpoint直到它的状态发生改变,wait参数就是限制这个等待时长。

因为状态会变,endpoint会保存一系列的状态,index就是这一系列状态中其中一个状态的标记。发起请求的时候,你带上index,那么endpoint就能返回对应的下一个状态。(然后你拿到新的index,然后继续去请求下一个状态,如此循环,就能拿到最后最新的状态了)

这个可以用来实现watch.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进