公共参数指所有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格式的请求体。请求体的结构取决于不同接口的定义,请参见对应的接口文档。