Skip to content

响应与错误码 ​

标准错误结构 ​

大多数新接口返回:

json
{
  "statusCode": 404,
  "code": "RESOURCE_NOT_FOUND",
  "message": "resource does not exist"
}

旧图片兼容接口只保证 code 和 message。

资源错误 ​

HTTPcode说明
404RESOURCE_NOT_FOUNDtoken 不存在或已删除
409RESOURCE_STATE_CONFLICT资源不处于本次操作要求的状态
410RESOURCE_EXPIRED固定 TTL 已到期
422INVALID_IMAGE_RESOURCE图片不可读取、MIME 不一致或像素超限
503RESOURCE_SERVICE_UNAVAILABLEAPI 无法访问 Resource Service
507RESOURCE_CAPACITY_EXCEEDEDResource Service 容量耗尽

流与预览错误 ​

HTTPcode说明
404STREAM_NOT_FOUND流不存在,或预览源没有活动流
409PREVIEW_SUPERSEDED本批次被更新请求取代
410STREAM_EXPIRED流 TTL 已到期
429STREAM_SUBSCRIBER_LIMIT单流订阅者达到上限
503/507STREAM_CAPACITY_EXCEEDED流数量或最新帧内存容量耗尽
413PREVIEW_FRAME_TOO_LARGEWorker 预览帧超过下载限制

Worker 与渲染错误 ​

HTTPcode说明
400INVALID_RENDER_JOB请求字段或组合非法
429WORKER_BUSYImage Worker 达到并发上限
502INVALID_WORKER_RESPONSEWorker 返回空内容或错误 MIME
503WORKER_UNAVAILABLEImage Worker 未配置或网络不可达
504WORKER_TIMEOUTWorker 调用超时
413FINAL_IMAGE_TOO_LARGE单张最终图片超过限制
507FINAL_RENDER_CAPACITY_EXCEEDEDAPI 最终渲染 tmpfs 预留容量耗尽

客户端处理建议 ​

  • 400/422:修正请求,不自动重试。
  • 404/410:重新上传资源或创建流。
  • 409 PREVIEW_SUPERSEDED:忽略旧请求结果。
  • 429:指数退避并降低并发。
  • 502/503/504:有限次数重试并记录依赖健康状态。
  • 507:等待容量释放;持续出现时联系运维调整限制。

不要无限重试最终渲染。必须先确认资源仍为 READY,并为每次调用设置客户端超时和取消信号。

Markify 文档与协议随实现同步演进。