目录

图片风控

功能介绍

此接口给您提供对计划下发的图片进行风控校验的功能。

使用约束

接口最大调用频率限制单个应用每分钟60次,超过此限制会返回错误码83010002。

本接口仅用于Push消息推送场景,不得用于其他用途。通过风控校验的图片不得修改,否则会导致通知消息无法正常显示。

接口原型

  • [clientId] :OAuth 2.0客户端ID(凭据),登录AppGallery Connect网站,选择“开发与服务”,在项目列表中选择对应的项目,左侧导航栏选择“项目设置”,在该页面获取。

  • [projectId] :项目ID,登录AppGallery Connect网站,选择“开发与服务”,在项目列表中选择对应的项目,左侧导航栏选择“项目设置”,在该页面获取。

  • 提供的两个接口URL功能相同,只是鉴权方式不同,均可使用。

请求参数

Request Header

参数 取值描述 样例
Authorization

鉴权方式:

JWT方式:

详情参见基于服务账号生成鉴权令牌。

说明:

建议JWT令牌过期时间设置为3600秒,有效期内可以复用。

Bearer后面拼接空格,再拼接获取的鉴权信息。

Bearer eyJraWQiOiIx---xxx.eyJhdWQiOiJodHR---xxx.QRodgXa2xeXSt4Gp---xxx
push-type

消息类型,取值如下:

0:通知消息发送大图标消息场景

1:服务卡片刷新图片场景

2:语音播报发送大图标消息场景

1

Request Body

参数 是否必选 参数类型 描述
imageUrl 是 String 待验证图片的公网地址,必须是https协议。

请求示例

{
    "imageUrl": "https://example.com/image.png"
}

响应参数

Response Body

参数 是否必选 参数类型 描述
code 是 String 响应码。
msg 是 String 响应码描述。
requestId 否 String 请求标识。
downloadUrl 否 String 验证通过的图片地址(本接口成功时才返回)。由华为Push服务器在原始URL的基础上拼接风控校验Key生成,确保图片来源合法且未被篡改,可作为通知右侧大图标(对应Notification的image参数)、服务卡片图片(对应FormImage的url参数)等场景的图片地址。
expireTime 否 String 图片风控验证有效截止时间,以Unix时间戳表示,单位:s(本接口成功时才返回)。

响应示例

响应成功示例:

{
    "code": "83010000",
    "msg": "Verify success",
    "requestId": "1631***********0101",
    "downloadUrl": "https://**.png?verifyKey=MEUCIQDzfYMReU*****************fdCOX9KToGq7o%3D",
    "expireTime": "1689911616"
}

响应失败示例:

{
    "code": "83010005",
    "msg": "Download picture failed",
    "requestId": "1691***********1501"
}

HTTP响应码

HTTP响应码 描述 解决方法
200 成功。 -
400 参数错误。 请检查业务响应码并根据业务响应码进一步排查问题。
401 鉴权失败。 请检查HTTP请求头中Authorization参数里面的JWT。
404 找不到服务。 请检查请求URL是否正确。
500 服务内部错误。 请通过在线提单提交问题。
502 请求连接异常,常见于网络状况不稳定。 建议稍后重试,或通过在线提单提交问题。

业务响应码

[h2]80100001 参数错误

错误信息

Check Parameter Error.

错误描述

参数错误。

可能原因

参数错误。

处理步骤

请按照响应消息中的提示,检查并修改请求参数。

[h2]80100003 url格式错误

错误信息

only https allow.

错误描述

url格式错误。

可能原因

url格式错误。

处理步骤

请根据响应消息中的提示,检查并修改图片imageUrl必须为https协议。

[h2]80200001 认证错误

错误信息

Authentication Error.

错误描述

认证错误。

可能原因

  1. 发送请求时未添加Authorization参数或Authorization的值为空。

  2. 用于申请JWT Token的Project Id和发送请求的Project Id不一致。

  3. Authorization参数中的JWT Token与实际应用不匹配。

处理步骤

请根据响应消息中的提示,排查请求头中Authorization参数鉴权失败是否存在以下情况:

  1. 请检查发送请求时是否添加Authorization参数或Authorization的值为空。

  2. 请参考鉴权令牌生成步骤中的步骤二,检查发送请求URL(https://push-api.cloud.huawei.com/v2/[projectId]/images:verify)中的projectId,确保与您当前应用所属的项目保持一致。

  3. 请检查Authorization参数中的JWT Token与实际应用是否匹配,详情参见基于服务账号生成鉴权令牌。

重新生成JWT Token后再发送请求。

[h2]80200003 Access token过期

错误信息

Access token expired.

错误描述

Access token过期。

可能原因

Access Token过期。

处理步骤

请根据响应消息中的提示,重新生成JWT Token后再发送请求,请参见基于服务账号生成鉴权令牌。

[h2]80200005 JWT Token过期

错误信息

Jwt token expired.

错误描述

JWT Token过期。

可能原因

JWT Token过期。

处理步骤

请根据响应消息中的提示,重新生成JWT Token后再发送请求,请参见基于服务账号生成鉴权令牌。

[h2]80300002 没有权益

错误信息

No permission to send message to these tmIDs.

错误描述

没有权益。

可能原因

发送的项目未开通推送服务。

处理步骤

请在AppGallery Connect网站开通推送服务。

[h2]83010000 图片通过风控

错误信息

Verify success.

错误描述

图片通过风控。

可能原因

图片通过风控。

处理步骤

不涉及。

[h2]83010001 图片未通过风控

错误信息

Verify failed.

错误描述

图片未通过风控。

可能原因

图片未通过风控,图片包含敏感信息。

处理步骤

请根据响应消息中的提示,修改图片并重新进行图片风控。

[h2]83010002 超出流控阈值

错误信息

The number of sent messages exceeds the limit.

错误描述

超出流控阈值。

可能原因

超出流控阈值(单个应用每分钟60次)。

处理步骤

请根据响应消息中的提示,降低请求频率后重试。

[h2]83010003 请求体为空

错误信息

Request body is empty.

错误描述

请求体为空。

可能原因

请求体为空。

处理步骤

请根据响应消息中的提示,检查并修改请求体内容。

[h2]83010004 不支持风控

错误信息

Send control is not supported.

错误描述

不支持风控。

可能原因

未匹配到风控策略,不支持风控。

处理步骤

未匹配到风控策略,请通过在线提单提交问题。

[h2]83010005 下载图片失败

错误信息

Download picture failed.

错误描述

图片下载失败。

可能原因

图片下载失败,请求体中的图片URL不正确。

处理步骤

请根据响应消息中的提示,请检查并修改请求体中的图片URL。

[h2]83010007 消息类型错误

错误信息

The header does not contain valid push-type.

错误描述

消息类型错误。

可能原因

消息类型错误。

处理步骤

请根据响应消息中的提示,检查并修改push-type。