跳转到内容

getTaskResult 获取结果

getTaskResult 查询异步任务的结果。创建任务后每 5 秒调用一次:返回 processing 就继续等,返回 ready 时结果在 solution 里,返回错误就停止。查询不扣点,查多少次都一样。

POSThttps://api.yescaptcha.com/getTaskResult国际节点
POSThttps://cn.yescaptcha.com/getTaskResult国内节点
字段 类型 必填 说明
clientKey string 是 账户密钥,和创建任务时用的相同
taskId string 是 createTask 返回的任务 ID
{ "clientKey": "YOUR_CLIENT_KEY", "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006" }
情况 返回 怎么做
处理中 {"errorId": 0, "status": "processing"} 5 秒后再查
完成 {"errorId": 0, "status": "ready", "solution": {...}} 取 solution,solution 的字段见各任务类型页
识别失败 {"errorId": 1, "errorCode": "ERROR_CAPTCHA_UNSOLVABLE", ...} 已自动退点,可以重新创建任务
超时 {"errorId": 1, "errorCode": "ERROR_TASK_TIMEOUT", ...} 已自动退点,可以重新创建任务
任务不存在或已过期 {"errorId": 1, "errorCode": "ERROR_TASKID_INVALID", ...} 停止查询这个 taskId

完成时的例子(reCAPTCHA v2):

{
"errorId": 0,
"status": "ready",
"solution": {
"gRecaptchaResponse": "03AGdBq25SxXT-pmSeBXjzScW-EiocHwwpwqtk1QXlJnGnU..."
}
}
  • 每 5 秒查一次。 同一个 taskId 5 秒内的重复查询直接返回 processing,查得更勤不会更快。
  • 任务最长处理约 110 秒(少数类型 180 到 220 秒),超时返回 ERROR_TASK_TIMEOUT 并自动退点。程序里的等待上限建议设为 3 分钟左右。
  • 结果保留约 10 分钟,之后 taskId 失效,返回 ERROR_TASKID_INVALID。拿到结果要尽快使用:token 本身的有效期更短(reCAPTCHA 约 120 秒)。
  • 出错就停。 返回 errorId: 1 后继续查同一个 taskId 结果不会变;同一个已结束的任务被查到第 3 次起,errorDescription 末尾会提示停止轮询。ERROR_TASKID_INVALID 计入 自动暂停 的错误次数(同一个 ID 只算第一次)。
  • 在哪个节点创建的任务,就到哪个节点查询。
  • getTaskResult 不受自动暂停影响:暂停前已创建的任务照常可以查。