Alibaba Content Security Service支援以非同步訊息通知的方式向您發送內容識別和您自助審核的結果。如果您的業務需要使用或整合相關資料,則可以配置回調通知。本文介紹了配置內容檢測API回調通知的操作方法。
背景資訊
內容檢測API回調通知分為掃描結果回調通知和審核結果回調通知。
- 掃描結果回調通知:Alibaba Content Security Service完成檢測請求後,服務端將識別的結果以POST請求的方式,發送到您設定的HTTP回調通知地址。
- 審核結果回調通知:您通過自助審核或調用反饋介面修改識別的結果後,Alibaba Content Security Service服務端將審核結果以POST請求的方式,發送到您設定的HTTP回調通知地址。更多資訊,請參見自助審核。
相關概念
在配置回調通知前,請瞭解下表中描述的相關概念。
名稱 | 說明 |
回調地址 | 回調地址是您在Alibaba Content Security Service控制台配置的服務端地址,通常是您自己的商務服務器的公網地址。回調地址需要滿足以下要求:
|
Seed | Seed值用於校正發送到您設定的HTTP回調通知地址的請求是否來自Alibaba Content Security Service服務端。 |
回調次數 | 您的服務端接收到Alibaba Content Security Service推送的回調訊息後,如果返回的HTTP狀態代碼為200,表示接收成功;如果返回其他的HTTP狀態代碼,均視為接收失敗。如果接收失敗,Alibaba Content Security Service服務端會重複推送回調訊息,直至您接收成功。Alibaba Content Security Service最多重複推送回調訊息3次。 |
回調資料 | 回調資料是Alibaba Content Security Service服務端向您設定的回調通知地址返回的資料內容。回調資料的結構描述見回調通知表單資料。 |
名稱 | 類型 | 描述 |
checksum | String | 總和校正碼,由<使用者uid> + <seed> + <content> 拼成字串,通過SHA256演算法產生。使用者UID即阿里雲帳號ID,可以在阿里雲控制台,滑鼠懸浮在右上方的頭像上,查看上查詢阿里雲帳號ID。 說明 為防篡改,您可以在擷取到推送結果時,按上述演算法產生字串,與checksum做一次校正。 |
content | String | 字串格式儲存的JSON對象,請自行解析反轉成JSON對象。關於content解析成JSON後的結構,請參見下文content說明。 |
掃描結果回調通知
內容檢測API的非同步檢測介面均支援掃描結果回調,例如圖片審核非同步檢測、視頻審核非同步檢測。您在發起非同步呼叫時,如果希望Alibaba Content Security Service向您返回掃描結果,則必須在請求參數中傳入callback(回調地址)和seed(校正字串)。
說明 在非同步呼叫時如果不使用掃描結果回調,則您只能通過定期輪詢的方式擷取非同步檢測結果。
操作步驟
- 自行準備好接收掃描結果的HTTP回調地址和Seed參數。
- 調用內容檢測非同步API介面時,傳遞相應的callback和seed請求參數,具體請參見API介面描述中的參數說明。
人工審核回調通知
人工審核介面不支援即時返回檢測結果,系統支援回調方式通知調用方。
- 人機審核如果您使用的是阿里雲人工審核服務+機審服務,人工審核模組的回調需要通過控制台配置訊息通知來實現,具體操作步驟如下:
- 登入Alibaba Content Security Service控制台。
- 在左側導覽列,選擇 。
- 在機器審核頁面,單擊訊息通知頁簽,然後單擊新增通知。
- 在新增通知對話方塊,輸入方案名稱、回調地址,選擇密碼編譯演算法、通知類型、審核結果。然後單擊確定。
儲存完成後,系統自動產生seed。seed值用於校正您的回調介面收到的請求來自阿里雲。請儲存自動產生的seed。
重要- 如果您已經配置了機審回調通知服務,您可以直接複用之前的配置,也可以根據業務需要重新設定。
- 系統支援對於所有的審核結果進行回調,您也可以根據自己的業務情境選擇部分審核結果進行回調。
- 通知類型項請選擇阿里雲人審結果。
- 密碼編譯演算法方式:
- SHA256:使用HMAC-SHA256密碼編譯演算法。
- 國密SM3:使用國密SM3密碼編譯演算法,返回十六進位的字串,且字串由小寫字母和數字組成。
例如,abc經國密SM3加密後返回66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0。
- 在業務情境管理頁簽,單擊目標業務情境右側操作列的關聯訊息通知,關聯您配置的回調通知方案。
content說明
啟用回調通知後,Alibaba Content Security Service將按照回調配置發送內容檢測API回調通知。回調通知中包含content表單資料。下表描述了content表單欄位的結構。
名稱 | 類型 | 是否必須 | 說明 |
scanResult | JSONObject | 否 | 掃描結果。根據檢測對象(圖片、視頻)的不同,結構有差異。 |
auditResult | JSONObject | 否 | 您的自助審核結果。發生自助審核操作時才會有該欄位。具體請參見auditResult。 說明 如果只推送掃描結果,則沒有該欄位。 |
humanAuditResult | JSONObject | 否 | 阿里雲的人工審核結果。如果您購買了阿里雲的人工審核服務,則人工審核的結果體現在該欄位中。具體請參見humanAuditResult。 |
名稱 | 類型 | 是否必須 | 說明 |
suggestion | String | 是 | 自助審核的結果,取值:
|
labels | JSONArray | 否 | 自助審核時設定的標籤,包含以下可選值中的一個或者多個:
|
名稱 | 類型 | 是否必須 | 說明 |
suggestion | String | 是 | 阿里雲人工審核的結果,取值:
|
taskId | String | 是 | 檢測任務的ID。通過任務ID可以關聯到對應內容的審核結果。 |
dataId | String | 是 | 檢測內容的ID。 |
labels | JSONArray | 否 | 人工審核的標籤結果,可能有多個值。 說明 預設不返回該參數。配置該欄位需要額外收費,具體請聯絡商務溝通。 |
content樣本
{
"scanResult": {
"code": 200,
"msg": "OK",
"taskId": "fdd25f95-4892-4d6b-aca9-7939bc6e9baa-1486198766695",
"url": "http://1.jpg",
"results": [
{
"rate": 100,
"scene": "porn",
"suggestion": "block",
"label": "porn"
}
]
},
"auditResult": {
"suggestion": "block",
"labels": [
"porn",
"ad",
"terrorism"
]
},
"humanAuditResult": {
"suggestion": "pass",
"dataId": "yyyy",
"labels": [
"色情",
"低俗"
],
"taskId": "xxxxxx"
}
}