进度流程
当客户端想要_接收_某个请求的进度更新时,它在请求元数据中包含一个progressToken。
- 进度 token **必须(MUST)**是一个字符串或整数值
- 进度 token 可以由客户端以任何方式选择,但**必须(MUST)**在所有活动请求中唯一。
- 原始的进度 token
- 到目前为止的当前进度值
- 一个可选的 “total” 值
- 一个可选的 “message” 值
progress值**必须(MUST)**随每次通知递增,即使总数未知。progress和total值**可以(MAY)**是浮点数。message字段**应当(SHOULD)**提供相关的人类可读进度信息。
行为要求
-
进度通知**必须(MUST)**只引用满足以下条件的 token:
- 曾在一个活动请求中提供
- 与一个进行中的操作关联
-
收到带进度 token 请求的服务器可以(MAY):
- 选择不发送任何进度通知
- 以它们认为适当的任何频率发送通知
- 若总数未知则省略 total 值
实现注意事项
- 客户端和服务器**应当(SHOULD)**跟踪活动的进度 token
- 双方**应当(SHOULD)**实现速率限制以防止泛洪
- 进度通知**必须(MUST)**在完成后停止