一、简介

在使用OpenAPI进行开发和集成时,遇到错误码是在所难免的,为了帮助开发者们更高效地识别和解决这些问题,我们特别整理了一份详尽的OpenAPI错误码清单,以及针对常见错误码的解决方案。

二、错误码清单 

错误码

描述

详细说明

0

OK

请求成功

999

未知错误

发生业务异常但未指定错误码

400

参数无效

客户端请求中的参数无效或语法错误

401

未授权访问(Token无效)

身份验证失败、token错误或已失效 

403

禁止访问(IP限制或该API没有授权)

无法访问未授权的服务,请联系管理员授权

404

API不存在

请求路径有误或地址无法找到任何资源

405

Http方法不允许

请求方法(GET, POST)对某些特定的资源不适用,请确认接口的请求方法是否有误

406

API无法解晰或处理数据

客户端无法解析服务端返回的内容

415

不能支持的MediaType

服务器无法处理请求附带的媒体格式, 解决方法就是在请求头中加入Content-Type指定内容格式

429

API被限流

请求频率超过了所请求的服务设置频率 控制条件,请降频请求或联系管理员提高请求频率

500

服务异常,服务内部错误

未知异常,需联系系统管理员排查确认

601

数据重复

请求数据重复,可能由于网络波动或高并发生成重复数据

602

找不到数据

数据不存在,比如更新数据时找不到相应的分录

603

数据无效

必填字段数据为空/数据校验无效/请求数据量超出最大限制

604

不允许重复执行

幂等性控制时不允许重复请求,防止数据重复

611

更新数据失败

数据更新失败(逻辑校验没通过或数据不合法)

612

没有数据操作权限

没有相应的数据获取权限

701

脚本执行错误

接口脚本执行时发生错误,请联系管理员检查脚本

702

插件执行时发生异常

执行Java插件时发生错误

2500

服务器内部错误[网关]

未知异常,需联系系统管理员排查确认

2501

不存在应用信息[网关]

x-acgw-identity值不正确或未传入

2504

应用未订阅任何API[网关]

第三方应用未授权API

2505

应用未订阅此API[网关]

API未在第三方应用进行授权

2506

应用TOKEN解析失败[网关]

x-acgw-identity值不正确或不完整

2508

应用TOKEN校验失败[网关]

x-acgw-identity校验失败,该值所属租户与当前租户匹配

2510

应用为禁用状态[网关]

第三方应用被禁用,不允许使用

2511

应用已经过期[网关]

第三方应用已过期,需在详情页重新配置停止时间

2512

应用TOKEN已经过期[网关]

x-acgw-identity已过期,请确认是否已刷新重置

2519

此API已经被禁用[网关]

API已被禁止调用

2520

应用未启用[网关]

第三方应用未到启用时间,需在详情页重新配置启用时间

2526

请求被基础流控限制[网关]

请求次数超出每秒或每天的阈值限制

2529

解码token异常[网关]

x-acgw-identity值不正确或不完整

2530

路由未找到[网关]

请求路径有误或未在第三方应用进行授权

2528

请求被参数流控限制[网关]

每秒或每天的调用量,超出当前环境限流阈值,请求被限流策略拦截

2055

请求被计费策略拦截[网关]

当前环境所购买的权益次数已耗尽,且已超量调用30天以上,请求被计费策略拦截

三、常见错误码解决方案

3.1  解码token异常[网关]  不存在应用信息[网关]

正确添加x-acgw-identity,且已针对API进行授权,但在调用时出现:

{
    "errorCode": "2501",
    "messagecn": "不存在应用信息[网关]"
}

{
    "errorCode": "2551",
    "messagecn": "解码token异常[网关]"
}

该原因是由于x-acgw-identity不完整导致,请入参完整的x-acgw-identity值后再次发起调用。

x-acgw-identity示例:

djF8MTkyMmQ3YmI5ZDkwMzFlMjE1MDF8NDg4MTI2NDExOTk0MHw6V2LYE7CV5A6x4MzeVf1JgmRVuPMHnuyDv2ZiJ-mVx3w=

3.2 路由未找到[网关] 或 应用未订阅此API[网关]

当添加x-acgw-identity参数发起API请求后,若出现以下错误,是由于未在第三方应用中针对API进行授权;

需通过<服务授权/自建API授权>对所使用的API进行访问授权后第三方应用才可正常访问相关API,授权操作是配置可访问的接口范围。未授权的情况下会出现调用失败情况:

1. 服务授权:针对原厂标准API所组成的服务包进行授权,服务包有任何更新时可无感知实时更新权限;

2. 自建API授权:针对项目二开自建API进行授权;

3.3 获取appToken时,报错提示:<title>404 Not Foundtitle>

原因:请求地址错误,检查url末尾是否有空格、换行,或者请求地址多了ierp/等

3.4 获取accessToken时,报错提示:"非法操作。","errorCode""login.loginBizException"

原因:请求方式错误,login.do接口的请求方式必须为“POST”,否则执行失败。

3.5. 未经授权的访问

3.6. 当前第三方应用不在启用时间范围内

3.7. 请求被参数流控限制[网关]

限流档位

  秒(QPS)

  分(QPM)

  小时(QPH)

  天(QPD)

  是否需增购

标准空间

20

500

10,000

200,000

否(公有云默认)

专属空间

30

600

12,000

250,000

是(购买后申请)

专属+扩容 S

40

700

14,000

300,000

是(购买后申请)

专属+扩容 M

50

800

16,000

350,000

是(购买后申请)

专属+扩容 L

60

900

18,000

400,000

是(购买后申请)

专属+扩容 XL

70

1,000

22,000

500,000

是(购买后申请)

3.8. 请求被计费策略拦截限制[网关]