公共参数指所有HTTP请求都包含的内容,具体包括公共请求头和公共请求参数。
公共请求头
下表描述的公共请求头(Request Header)适用于通过URL发送HTTP POST请求调用内容安全检测服务类API。
名称 | 类型 | 是否必选 | 描述 |
Accept | String | 是 | 接受的返回结果的类型。目前只支持JSON类型,取值:application/json。 |
Content-Type | String | 是 | 当前请求体(Request Body)的数据类型。目前只支持JSON类型,取值:application/json。 |
Content-MD5 | String | 否 | 请求体的编码值,根据请求体计算所得。 算法说明:将请求体内容当作字符串进行MD5编码(返回二进制格式),然后进行Base64编码。 说明 当加密算法选择HMAC-SM3时,该字段可以不填写;当加密算法选择HMAC-SHA1(默认)时,该字段必填。 |
Date | String | 是 | 请求的时间。使用GMT日期格式表示,例如, |
x-acs-version | String | 是 | 内容安全接口的版本号。取值:2018-05-09。 重要 2018-05-09之前的版本已经下线,如果使用旧的版本号会返回HttpCode:400 , ErrorCode:InvalidAction.NotFound报错,请更换为2018-05-09版本号。 |
x-acs-signature-nonce | String | 是 | 签名唯一随机数。用于防止网络重放攻击,建议您每一次请求都使用不同的随机数。 |
x-acs-signature-version | String | 是 | 签名算法版本。取值:1.0。 |
x-acs-signature-method | String | 是 | 签名方式。取值:
关于签名方式的更多信息,请参见签名机制。 |
x-acs-content-sm3 | String | 否 | 请求体的编码值,根据请求体计算所得。 算法说明:将请求体内容当作字符串进行国密SM3加密得到bytes数组,然后将bytes数组转换成16进制,即:encodeHexString(SM3Digest(body))。 |
Authorization | String | 是 | 认证方式,格式为 参数说明:
|
公共请求参数
下表描述的公共请求参数(Query Parameter)适用于所有通过URL发送HTTP POST请求调用内容安全检测服务类API。
名称 | 类型 | 是否必选 | 描述 |
clientInfo | String | 否 | 发起请求的客户端信息。由ClientInfo结构体通过JSON序列化获得,包括umid或imei等信息。具体结构描述,请参见ClientInfo。 |
名称 | 类型 | 是否必选 | 描述 |
sdkVersion | String | 否 | SDK版本号。 通过SDK调用时需要提供该字段。更多信息,请参见SDK概览。 |
cfgVersion | String | 否 | 配置信息版本。 通过SDK调用时需要提供该字段。更多信息,请参见SDK概览。 |
userType | String | 否 | 用户账号的类型。取值:
|
userId | String | 否 | 您业务系统中用户的唯一标识。 强烈建议您填写该值用于分析用户违规行为。 |
userNick | String | 否 | 用户昵称。 |
imei | String | 否 | 硬件设备码。 |
imsi | String | 否 | 运营商设备码。 |
umid | String | 否 | 设备指纹。 |
ip | String | 否 | 用于标识您业务系统中用户的公网IP地址。 如果请求是从设备端发起的,该字段通常不填写。如果是从后台发起的,该IP为用户的登录IP或者设备的公网IP。 建议您填写该IP用于分析用户违规行为。如果未在请求中填写,服务端会尝试从链接或者HTTP请求头中获取该IP。 |
os | String | 否 | 设备的操作系统类型,例如Android 6.0。 |
channel | String | 否 | 渠道号。 |
hostAppName | String | 否 | 宿主应用名称。 |
hostPackage | String | 否 | 宿主应用包名。 |
hostVersion | String | 否 | 宿主应用版本。 |
请求示例
POST /green/image/scan?clientInfo=%7b%22userId%22%3a%22120234234%22%2c%22userNick%22%3a%22Mike%22%2c%22userType%22%3a%22others%22%7d HTTP/1.1
Accept: application/json
Content-Type: application/json
Content-MD5: C+5Y0crpO4sYgC2DNjycug==
Date: Tue, 15 May 2018 10:16:36 GMT
x-acs-version: 2018-05-09
x-acs-signature-nonce: adfkjfaHKslkjf
x-acs-signature-version: 1.0
x-acs-signature-method: HMAC-SHA1
Authorization: acs q23Q9K4PaGi12Wyk:adFff0FFO6sGcDbDNjRtso==
Host: green.cn-shanghai.aliyuncs.com/
Content-Length: 191
{
"scenes": [
"porn"
],
"tasks": [
{
"dataId": "test2NInmO$tAON6qYUrtCRgLo-1mwxdi",
"url": "https://img.alicdn.com/tfs/TB1urBOQFXXXXbMXFXXXXXXXXXX-1442-257.png"
}
]
}
参数说明:
POST
:表示请求方法。/green/image/scan
:表示请求路径。clientInfo=%7b%22userId%22%3a%22120234234%22%2c%22userNick%22%3a%22Mike%22%2c%22userType%22%3a%22others%22%7d
:表示经过编码后的公共请求参数。Accept: application/json
到Content-Length: 191
:表示HTTP请求头。其中,Accept: application/json
到Authorization: acs q23Q9K4PaGi12Wyk:adFff0FFO6sGcDbDNjRtso==
表示签名时要用到的公共请求头。{}
中的内容:表示JSON格式的请求体。请求体的结构取决于不同接口的定义,请参见对应的接口文档。