风险画像数据获取推送模式
2023.04.26 16:47:57
风险画像结果获取推送模式用于将风险画像结果主动推送给客户,保证客户最快的获取结果。客户需要按照以下规范实现接收结果的接口。推送模式与主动获取模式互斥,只能选取一种模式进行结果获取
接口说明
结果主动推送模式将结果或者异步机器检测结果推送给客户,需客户在调用检测接口时设置回调地址callbackUrl参数,客户方需保证回调接收接口的可用性和稳定性,确保能正常接收推送过来的结果数据
鉴权说明
易盾内容安全服务使用签名方法对接口进行鉴权,所有接口每一次请求都需要包含签名信息(signature 参数),以验证用户身份,防止信息被恶意篡改。目前支持MD5,SHA1,SHA256,SM3几种加密算法,详细信息,请参见接口鉴权
结果说明
- 协议说明:检测接口请求参数中指定了回调地址参数callbackUrl(即一个http(s)协议接口的URL)。主动推送接口需要支持http协议,支持POST方法,传输数据编码采用utf-8
- 接口性能:推送结果接口默认超时时间为2s,为了保证顺利接收数据,客户需保证接收接口可用性和性能稳定
- 失败重试:客户接口处理结果数据,并返回应答。如果客户接口请求异常,超时或收到的应答不符合规范,易盾会认为推送失败,重试一次后如果仍然失败,则数据将会丢失。
- 幂等性:结果推送时同样的结果可能会多次请求客户接口。客户接口需要保证幂等性,能够正确处理重复结果数据
接口耗时
客户接收接口需保证接收接口可用性和性能稳定,易盾请求超时时间为2s,客户接口尽量保证在1s内返回应答,如有特殊要求,可联系易盾运营适当调整超时时间
请求
请求地址
名称 | 值 |
---|---|
HTTP URL | 回调地址callbackUrl |
HTTP Method | POST |
请求头
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | String | 是 | 固定值:"application/x-www-form-urlencoded" |
请求参数
名称 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
secretId | String | 是 | 32 | 产品秘钥id,由易盾内容安全云服务分配,产品标识 |
businessId | String | 是 | 32 | 业务id ,由易盾内容安全云服务分配,业务标识 |
signature | String | 是 | 32 | 请求签名,用来验证此次请求的合法性,具体算法见接口鉴权 |
callbackData | String | 是 | - | 主动推送结果数据,格式为json字符串 |
请求体示例
signature=xxx&secretId=xxx&businessId=xxx
callbackData为json字符串格式,请自行解析或者反转成json对象使用。callbackData详细字段信息如下:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
callbackData | String | 是 | 回调数据 |
productNumber | String | 是 | 易盾分配的产品编号 |
taskId | String | 是 | 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a" |
data | String | 是 | 账号/手机号/IP |
businessType | Number | 是 | 检测类型,106001:账号画像,106002:IP画像,106004:手机画像 |
riskDetails | String | 是 | 风险详情 |
propDetails | String | 是 | 属性详情 |
sendTime | Number | 是 | 推送时间 |
响应
响应结果
- 客户接口接收到我们回调的结果后,需要返回应答信息,接口响应HTTP状态码为200,当回调处理异常时,应答的HTTP状态码应为500,或者4xx;
- 目前推送方式默认连接超时(connect timeout)1s,回调超时(socket timeout)为2s,建议收到推送检测结果后,优先返回reponse应答信息,异步处理检测结果,避免因为回调超时,易盾侧未收到响应重复推送结果。如业务侧对于超时配置有特殊要求,可联系易盾策略经理调整配置。
- 应答信息为json格式,字段定义如下:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
code | Number | 是 | 应答code,易盾方解析code为200表示推送成功 |
msg | String | 否 | 具体描述信息 |
响应体示例
{
"code": 200,
"msg": "成功"
}