鉴权及调用受限问题
更新时间:2020-01-17
注意事项
- 在控制台里创建应用时,获取的API Key、Secret Key,可用来生成鉴权签名(Access Token)。请求鉴权接口时,参数 client_id 就是指 API Key,client_secret 是指 Secret Key。
- 同一账号下,同一接口服务所享有的免费额度是一定的,无论创建多少AppId,都共享这个额度。
获取Access Token错误
现象/报错 | 常见错误/排查思路 |
---|---|
得到一个html页面 | 接口地址输入错误,比如末尾多了空格、逗号、斜线(/)等 |
提示invalid_client | 1. client_id输入错误 2. client_secret输入错误 |
提示Unexpected | grant_type输入错误 |
提示unsupported_grant_type | 没有传grant_type参数 |
提示invalid_request | 1. 没有传client_id参数 2. 没有传client_secret参数 |
提示invalid_request | 1. 没有传client_id参数 2. 没有传client_secret参数 |
使用Access Token调用接口时受限
若请求错误,服务器将返回的JSON文本包含以下参数:
- error_code:错误码。
- error_msg:错误描述信息,帮助理解和解决发生的错误。
例如Access Token失效返回:
{
"error_code": 110,
"error_msg": "Access token invalid or no longer valid"
}
提示错误码6
错误码6:no permission to access data,表示没有接口权限。
核实步骤 | 操作方法 |
---|---|
确认该应用是否有该接口的权限 | 1. 登录控制台 2. 点击左侧「应用列表」,点击正确的应用名称,进入详情页 3. 查看API列表中的「API」名称或「请求地址」,核实是否包含目标接口。如果没有,就说明该应用没有该接口的权限。 |
常见原因 | 解决方法 |
---|---|
所使用的Access Token,其client_id和client_secret不是从正确的应用下获取的 | 在应用列表里核实,获取过 client_id(即 API Key)和 client_secret(即 Secret Key)的应用是否正确,如是否把正式应用和测试应用搞混了 |
未开通接口权限 | 1. 编辑应用,重新勾选所需要调用的接口 2. 或者在控制台的人脸页面里创建新应用,使用新的 client_id 和 client_secret |
接口地址写错 | 1. 登录控制台 2. 点击左侧「应用列表」,点击正确的应用名称,进入详情页 3. 查看API列表中的「请求地址」,与接口文档对照,看是否错漏 注意:区分V2、V3版本,现在新用户开通的,默认是V3版本的接口 |
未完成企业认证,无法开通公安验证 (包括开通企业认证,但未生效) |
1. 个人用户:公安验证接口需要完成企业认证才开通权限 2. 企业用户:完成企业认证,需重新登录控制台,进入人脸识别页面,约30分钟后生效。 |
提示错误码17
错误码17:Open api daily request limit reached,表示流量超限额。
核实步骤 | 操作方法 |
---|---|
确定接口的免费次数 | 1. 查看免费额度中,该接口的免费额度说明 2. 在控制台概览页,找到该接口,查看免费额度 3.如果已开通付费,核实账号余额或者可用代金券是否大于0 |
查看接口的已使用量 | 进入控制台概览页,点击左侧「监控报表」 1. 选择「全部应用」 2. 选择报错的API接口 3. 统计项选择「调用量」 4. 监控项勾选「调用成功」和「调用失败」 5. 时间段选择能够覆盖报错的时间起止(统计有2小时左右的延迟) |
常见原因 | 操作方法 |
---|---|
已开通付费:接口的免费额度已使用完毕,账户余额不足 | 给账户充值 |
未开通付费:接口的免费额度已使用完毕 | 开通付费并充值 |
测试接口:接口的免费额度已使用完毕,测试阶段未上计费 | 提交工单申请更高免费额度 |
提示错误码18
错误码18: Open api qps request limit reached,表示QPS超限
核实步骤 | 操作方法 |
---|---|
确定接口的免费QPS额度 | 1. 查看免费额度中,该接口的免费额度说明 2. 在控制台概览页,找到该接口,查看免费额度 3.如果已开通付费,核实账号余额或者可用代金券是否大于0 |
查看接口的已使用QPS量 | 进入控制台概览页,点击左侧「监控报表」 1. 选择「全部应用」 2. 选择报错的API接口 3. 统计项选择「QPS」 4. 监控项勾选「QPS峰值」 5. 时间段选择能够覆盖报错的时间起止(统计有2小时左右的延迟) |
常见原因 | 操作方法 |
---|---|
QPS额度不足 | 1. 个人用户免费QPS是2,完成企业认证,免费额度会提升到10qps 2. 付费购买超限接口的QPS 3. 也可降低请求并发 注:QPS,Queries-per-second,即并发,是指每秒钟请求某服务的次数 |
公安验证接口已开通付费,但处于欠费状态 | 给账户充值,补齐欠费 |