开发者社区 问答 正文

如何实现错误响应?

当用户访问图片处理服务出现错误的时候,图片处理服务会返回给用户相应的错误码和错误信息,以帮助用户定位与处理问题。

图片处理服务错误的响应格式


错误响应的消息体例子: <Error>
  <Code>BadRequest</Code>
  <Message>Input is not base64 decoding.</Message>
  <RequestId>52B155D2D8BD99A15D0005FF</RequestId>
  <HostId>userdomain</HostId>
</Error>


错误包含以下元素:

  • Code: 图片处理服务返回给用户的错误码。
  • Message: 图片处理服务给出的详细错误信息。
  • RequestId: 用以标识错误请求的唯一UUID,在无法解决问题时候,可以使用此错误ID发送给图片处理服务的工程师去定位错误的原因。
  • HostId:用来标识访问的图片处理服务集群。


图片处理服务的错误码

错误码描述HTTP 状态码
InvalidArgument参数错误400
BadRequest错误请求400
MissingArgument缺少参数400
ImageTooLarge图片大小超过限制400
WatermarkError水印错误400
AccessDenied拒绝访问403
SignatureDoesNotMatch签名不匹配403
NoSuchFile图片不存在404
NoSuchStyle样式不存在404
InternalError服务内部错误500
NotImplemented方法未实现501


处理参数限制说明


目前图片处理有如下默认限制:
  • 处理源文件的大小限制在20MB。
  • 缩略操作:对缩略后的图片的大小有限制,目标缩略图的宽与高的乘积不能超过4096 * 4096, 而且单边的长度不能超过4096 * 4。
  • 旋转操作:旋转对图的尺寸有限制,图片的宽或者高不能超过4096。
  • 管道目前限制在4个。

展开
收起
青衫无名 2017-10-23 10:54:30 1667 分享 版权
阿里云 AI 助理回答

当您访问图片处理服务遇到错误时,服务会返回一个结构化的错误响应来帮助您定位问题。以下是错误响应的详细说明及常见错误码列表:

错误响应格式示例:

<Error>
 <Code>BadRequest</Code>
 <Message>Input is not base64 decoding.</Message>
 <RequestId>52B155D2D8BD99A15D0005FF</RequestId>
 <HostId>userdomain</HostId>
</Error>

错误响应元素说明: - Code: 错误码,标识具体的错误类型。 - Message: 详细错误信息,描述错误的具体原因。 - RequestId: 唯一的请求ID,用于追踪和定位问题。 - HostId: 访问的图片处理服务集群标识。

常见错误码及解决方案:

错误码描述HTTP状态码解决方案
InvalidArgument参数错误400检查并修正请求中的参数。
BadRequest错误请求400确保请求格式正确无误。
MissingArgument缺少参数400补充缺失的必要参数。
ImageTooLarge图片大小超过限制400减小图片尺寸或调整至允许范围内。
WatermarkError水印错误400检查水印设置是否正确。
AccessDenied拒绝访问403确认拥有足够的权限访问服务。
SignatureDoesNotMatch签名不匹配403核对签名生成方式,确保与阿里云要求一致。
NoSuchFile图片不存在404确认图片URL或路径正确无误。
NoSuchStyle样式不存在404使用存在的样式配置进行请求。
InternalError服务内部错误500通常为服务端问题,可尝试重新请求或联系技术支持。
NotImplemented方法未实现501避免使用未实现的功能,或等待功能上线后再次尝试。

处理参数限制: - 文件大小限制:源文件大小上限为20MB。 - 缩略图限制:缩略图宽高乘积不超过4096 * 4096,且单边长度不超过4096像素。 - 旋转操作限制:图片宽度或高度不能超过4096像素。 - 管道操作限制:当前支持的最大管道操作数为4个。

针对具体错误,您可以根据错误码和消息调整您的请求参数或操作步骤,若问题依旧,请提供RequestId给技术支持以进一步排查。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址: