错误

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

下面的部分分别描述了 v2 和 v1 资源方法的错误模型。

v2 资源错误模型

默认情况下,资源方法回应为 200 状态。 当请求失败时,Open Cloud 返回标准错误代码。 所有错误回应都有相同的格式,包括:

  • code - 代表 HTTP 状态代验证码。
  • message - 一个解释错误的消息。
  • details - 一个包含更多信息的对象。
示例错误

{
"code": "INVALID_ARGUMENT",
"message": "The provided filter is invalid.",
"details": [
{
...
}
]
}

代码

下表描述可能为 code 的值。

代码HTTP状态描述
INVALID_ARGUMENT400您通过了一个无效的参数,例如一个无效的 universeId 。您可能还有一个或无效的头谱,例如 Content-LengthContent-Type
PERMISSION_DENIED403您的请求没有足够的权限或范围来执行此操作。
NOT_FOUND404系统无法找到您指定的资源,例如数据存储存入。
ABORTED409操作已中止。
RESOURCE_EXHAUSTED429您没有足够的权限来执行此操作,通常是因为发送太多请求。
CANCELLED499系统终止请求,通常是由客户端时间超出导致。
INTERNAL500内部服务器错误,通常是由服务器 bug 导致。
NOT_IMPLEMENTED501服务器不实现 API 方法。
UNAVAILABLE503服务无可用,通常在服务器下降时返回。

v1 资源错误模型

所有错误的回应都有一个统一的格式,其中包括:

  • 一个 error 字段,这是所有 Open Cloud 端点的高级原因。
  • 一个说明错误 message ,这进一步解释了错误。
  • 一个 errorDetails 对象,包含更多与每个 API 相关的错误信息。

要分析错误的根本原因,请参阅 error 字段的值和 errorDetails 字段。 使用 message 字段作为错误处理的补充,因为有时它可能不会覆盖同一级别的细节如 2>ErrorDetails2> 字段。

示例标准数据商店错误响应

{
"error": "INVALID_ARGUMENT",
"message": "Invalid cursor.",
"errorDetails": [
{
"errorDetailType": "DatastoreErrorInfo",
"datastoreErrorCode": "InvalidCursor"
}
]
}

示例错误响应显示高级开云errorINVALID_ARGUMENT,错误

所有订购的数据存储错误答复的格式都一样,包括:

示例订购数据存储错误

{
"code": "INVALID_ARGUMENT",
"message": "Invalid cursor."
}

验证码ode 将包含高级错误的一组字符串,而 message 将包含与错误相关的特定细节

代码

参阅以下表,获得所有高级 Open Cloud 错误的概要。

HTTP状态代码错误描述
400无效的参数您通过了一个无效的参数,例如一个无效的 universeId 。您可能还有一个或无效的头谱,例如 Content-LengthContent-Type
403不足的范围请求需要比提供的访问代币更高的权限。
403权限被拒绝您的请求没有足够的范围来执行此操作。
404未找到系统无法找到您指定的资源,例如数据存商店。
409已中止操作因冲突而中止,例如发布不是宇宙的地方。
429资源_已耗尽您没有足够的权限来执行此操作,通常是因为发送太多请求。
499已取消系统终止请求,通常是由客户端时间超出导致。
500内部内部服务器错误。通常是服务器问题。
501未实现服务器不实现 API 方法。
503不可用服务不可用。通常服务器已关闭。