协议修订版本: 2025-03-26
进度跟踪流程
当一方希望为某个请求接收进度更新时,它会在请求的元数据中包含一个progressToken。
- 进度令牌 必须 是字符串或整数类型
- 进度令牌可以由发送方任意选择,但 必须 在所有活跃请求中保持唯一
- 原始的进度令牌
- 当前的进度值
- 可选的 “total”(总量)值
- 可选的 “message”(消息)值
- 每次通知中的
progress值 必须 递增,即使总量未知也是如此。 progress和total值 可以 是浮点数。message字段 应该 提供相关的人类可读的进度信息。
行为要求
-
进度通知 必须仅 引用以下令牌:
- 在活跃请求中提供的令牌
- 与正在进行的操作相关联的令牌
-
进度请求的接收方 可以:
- 选择不发送任何进度通知
- 按照其认为合适的频率发送通知
- 在未知总量时省略
total值
实现注意事项
- 发送方和接收方 应该 跟踪当前活跃的进度令牌
- 双方 应该 实现速率限制以防止消息泛洪
- 完成后 必须 停止发送进度通知