公共参数指所有HTTP请求都包含的内容,具体包括公共请求头和公共请求参数。

公共请求头

下表描述的公共请求头(Request Header)适用于通过URL发送HTTP POST请求调用内容安全检测服务类API。
名称类型是否必选描述
AcceptString接受的返回结果的类型。目前只支持JSON类型,取值:application/json
Content-TypeString当前请求体(Request Body)的数据类型。目前只支持JSON类型,取值:application/json
Content-MD5String请求体的编码值,根据请求体计算所得。
算法说明:将请求体内容当作字符串进行MD5编码(返回二进制格式),然后进行Base64编码。
说明 当加密算法选择HMAC-SM3时,该字段可以不填写;当加密算法选择HMAC-SHA1(默认)时,该字段必填。
DateString请求的时间。使用GMT日期格式表示,例如,Tue, 17 Jan 2017 10:16:36 GMT
x-acs-versionString内容安全接口的版本号。取值:2018-05-09
x-acs-signature-nonceString签名唯一随机数。用于防止网络重放攻击,建议您每一次请求都使用不同的随机数。
x-acs-signature-versionString签名算法版本。取值:1.0
x-acs-signature-methodString签名方式。取值:
  • HMAC-SHA1(默认)
  • HMAC-SM3

关于签名方式的更多信息,请参见签名机制

x-acs-content-sm3String请求体的编码值,根据请求体计算所得。

算法说明:将请求体内容当作字符串进行国密SM3加密得到bytes数组,然后将bytes数组转换成16进制,即:encodeHexString(SM3Digest(body))。

AuthorizationString认证方式,格式为"acs" + " " + AccessKeyId + ":" + signature
参数说明:
  • AccessKeyId:表示通过阿里云控制台申请获得的访问密钥AccessKey ID。关于AccessKey ID的获取方式,请参见创建AccessKey
  • signature:表示请求签名。关于请求签名的计算方法,请参见签名机制

公共请求参数

下表描述的公共请求参数(Query Parameter)适用于所有通过URL发送HTTP POST请求调用内容安全检测服务类API。
名称类型是否必选描述
clientInfoString发起请求的客户端信息。由ClientInfo结构体通过JSON序列化获得,包括umid或imei等信息。具体结构描述,请参见ClientInfo
表 1. ClientInfo
名称类型是否必选描述
sdkVersionStringSDK版本号。

通过SDK调用时需要提供该字段。更多信息,请参见SDK概览

cfgVersionString配置信息版本。

通过SDK调用时需要提供该字段。更多信息,请参见SDK概览

userTypeString用户账号的类型。取值:
  • taobao:表示淘宝账号。
  • others:表示其他账号体系的账号。
userIdString您业务系统中用户的唯一标识。

强烈建议您填写该值用于分析用户违规行为。

userNickString用户昵称。
imeiString硬件设备码。
imsiString运营商设备码。
umidString设备指纹。
ipString用于标识您业务系统中用户的公网IP地址。

如果请求是从设备端发起的,该字段通常不填写。如果是从后台发起的,该IP为用户的登录IP或者设备的公网IP。

建议您填写该IP用于分析用户违规行为。如果未在请求中填写,服务端会尝试从链接或者HTTP请求头中获取该IP。

osString设备的操作系统类型,例如Android 6.0
channelString渠道号。
hostAppNameString宿主应用名称。
hostPackageString宿主应用包名。
hostVersionString宿主应用版本。

请求示例

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/jsonContent-Length: 191:表示HTTP请求头。其中,Accept: application/jsonAuthorization: acs q23Q9K4PaGi12Wyk:adFff0FFO6sGcDbDNjRtso==表示签名时要用到的公共请求头。
  • {}中的内容:表示JSON格式的请求体。请求体的结构取决于不同接口的定义,请参见对应的接口文档