You need to enable JavaScript to run this app.
文档中心
文档控制台
注册
AI 数据湖服务

AI 数据湖服务

复制全文
下载 pdf
API 参考:算子调用 API
异步回调 API
复制全文
下载 pdf
异步回调 API

LAS 算子为您提供异步接口的异步回调(Callback)能力,您可在发起算子调用任务时设置回调参数callback.url,当算子任务状态发生变更后,LAS 会向该 URL 发送 HTTP POST 通知。

注意事项
  • 异步回调(Callback)能力适用于异步任务的算子,通常异步任务算子通过 submit 接口提交任务、poll 接口轮询查询任务处理状态。使用 Callback 能力可减少轮询频率,通过 LAS 主动通知来及时了解任务运行状态。
  • 当前异步任务算子陆续开放 Callback 功能,已支持的算子包含:las_asr_pro、las_video_super_resolution、las_video_seedance_replace、las_viral_clip_gen、las_video_scene_seg、las_video_translate。
  • Callback 机制是尽力通知机制,不提供严格可靠、严格一次、严格有序保证。在某些特殊场景下,例如由于网络原因等,可能存在接收端没有正常获取到任务状态,LAS 会有一定的重试发送消息的机制,但无法保障一定成功,因此使用 Callback 功能时,建议补充使用 poll 接口的兜底逻辑。

使用说明

调用流程

  1. 用户调用 /api/v1/submit 提交异步任务,并传入 callback.url
  2. LAS 返回 task_id,用户保存该 task_id
  3. 任务状态发生变更后,LAS 向用户配置的 callback.url 发起 POST 通知。
  4. 用户收到 callback 后按 task_id 幂等处理。
  5. 如未收到 callback,用户仍应使用 /api/v1/poll 查询任务状态。

callback.url 配置要求

规则

说明

协议

默认仅允许 https://

Host

必须存在合法 host。

Userinfo

不允许 URL 中包含 userinfo,例如 https://user:pass@example.com/cb

Localhost

不允许 localhost.localhost

地址可达性

URL 应为 LAS 服务可访问的公网地址。

Redirect

LAS 不跟随 HTTP redirect。callback URL 应直接接收 POST。

响应耗时

建议用户服务在 5 秒内返回 2xx。

Callback 消息格式与字段

LAS 会向用户提供的 callback.url 发起 HTTP POST。

请求头

Content-Type: application/json; charset=utf-8

用户侧应以 metadata.task_id 做幂等处理。

Body 字段

字段

类型

说明

metadata.task_id

string

异步任务 ID。用户侧建议以此作为幂等键。

metadata.task_status

string

任务终态。取值包括:

  • PENDING:任务已提交,等待执行。
  • RUNNING:任务执行中。
  • COMPLETED:任务成功完成,响应中通常包含 data
  • FAILED:任务失败,错误信息在 metadata.business_codemetadata.error_msg

metadata.business_code

string

业务错误码。成功通常为 0

metadata.error_msg

string

错误信息。成功为空字符串。

data

object

必选。仅任务成功且服务端策略开启 include_data 时携带,内容与具体算子结果相关。

Callback 消息处理建议

  1. 解析 JSON body。
  2. 校验 metadata.task_id 非空。
  3. 查询本地是否已处理该 task_id
  4. 如果已处理,直接返回 2xx
  5. 如果未处理,落库记录完整 callback body。
  6. 根据 task_status 更新本地任务状态。
  7. 快速返回 2xx,后续较长的处理链路,建议放到用户自己的异步队列。

使用示例

submit 提交任务示例

{
  "operator_id": "las_xxx",
  "operator_version": "v1",
  "data": {
    "input": "..."
  },
  "callback": {
    "url": "https://example.com/las/callback"
  }
}

Callback 请求示例

LAS 会向用户提供的 URL 发起 HTTP POST。

成功任务示例

{
  "metadata": {
    "task_id": "task_xxx",
    "task_status": "COMPLETED",
    "business_code": "0",
    "error_msg": ""
  },
  "data": {
    "result": "..."
  }
}

失败任务示例

{
  "metadata": {
    "task_id": "task_xxx",
    "task_status": "FAILED",
    "business_code": "Server.InternalError",
    "error_msg": "..."
  }
}

完整 Demo

以下为您提供主流编程语言下,可搭建 callback 接收服务的代码骨架,您可以直接下载对应 Demo ,基于 Demo 对接开发callback 接收服务。

说明

未提供 Demo 的编程语言,可根据文档说明和示例、已有语言 Demo 示例进行改写。

  • Java:
    las-user-callback-example-java.zip
    未知大小
  • Python:
    las-user-callback-example-python.zip
    未知大小
  • Golang:
    las-user-callback-example-go.zip
    未知大小

常见失败问题

问题

表现

处理建议

算子暂不支持 callback

Submit 返回 Parameter.Invalid,提示未启用 callback。

当前算子暂不支持 Callback 能力,建议使用 poll 接口轮询任务状态获取算子处理结果。

URL 非 HTTPS

Submit 返回 Url.InvalidParameter.Invalid

请使用 HTTPS 格式的 URL;HTTP 格式的URL 存在安全风险,不建议使用。如确需 HTTP,需提交工单申请白名单,在 LAS 服务端放开策略允许。

URL 指向 localhost 或内网地址

Submit 或发送时被拒绝。

使用公网可访问的 HTTPS 地址。

用户服务返回 4xx

LAS 不重试。

修复用户 callback 接口鉴权、路径和请求体解析逻辑。

用户服务处理超过 5 秒

LAS 可能超时并重试。

接口快速落库返回,耗时逻辑异步处理。

任务完成但未收到 callback

无通知。

使用 /poll 兜底查询;排查URL 可达性和用户服务日志。

收到重复 callback

同一 task_id 多次到达。

task_id 幂等处理,重复请求返回 2xx。

最近更新时间:2026.07.23 19:39:06
这个页面对您有帮助吗?
有用
有用
无用
无用