日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

URL風險檢測接入指南

URL風險檢測支持SDK方式調用和原生HTTPS方式調用。推薦您使用SDK接入,可免去簽名驗證以及Body格式構建等細節步驟。本文介紹URL風險檢測接入的方式。

步驟一:開通服務

訪問開通服務頁面,開通內容安全增強版服務。

開通內容安全增強版服務后,默認付費方式是按量后付費,且按照實際用量結算當日費用,不調用服務不收費。接口接入使用后系統會按使用量自動出賬,具體信息,請參見計費說明您也可以購買按量抵扣資源包,資源包相較于后付費存在一定階梯折扣,適合使用量級可預期和較大的用戶。

步驟二:創建RAM用戶并授權

在集成SDK之前,您需要創建一個用于調用SDK的用戶身份,獲取身份關聯的OpenAPI訪問憑據,并授予訪問云上資源的訪問權限。本文創建RAM用戶,獲取訪問憑據為AccessKey,并授予調用URL風險檢測服務的權限。更多信息,請參見集成SDK

  1. 使用阿里云賬號(主賬號)或具有管理權限的RAM用戶登錄RAM控制臺

  2. 創建RAM用戶,勾選OpenAPI調用訪問,并記錄下RAM用戶生成的AccessKey。具體操作,請參見創建RAM用戶

  3. 向RAM用戶授權系統策略權限:AliyunYundunGreenWebFullAccess。具體操作,請參見為RAM用戶授權

步驟三:安裝并接入URL風險檢測服務

目前支持的接入地域為:

地域

外網接入地址

內網接入地址

華東2(上海)

green-cip.cn-shanghai.aliyuncs.com

green-cip-vpc.cn-shanghai.aliyuncs.com

說明

如果需要其他語言的SDK示例代碼,您可以通過OpenAPI 開發者門戶在線調試工具調試API接口,該工具會自動生成相應API的SDK調用示例代碼。在線調試API接口如下:

阿里云SDK代碼通過定義ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET環境變量來創建默認的訪問憑證。調用接口時,程序直接訪問憑證,讀取您的訪問密鑰(即AccessKey)并自動完成鑒權。您在接入SDK代碼示例之前,請先配置環境變量。具體操作,請參見身份驗證配置

Java SDK

在pom.xml中加入相應依賴,就可以在Maven工程中使用SDK。

  1. dependencies中添加如下依賴:

    <dependency>
      <groupId>com.aliyun</groupId>
      <artifactId>green20220302</artifactId>
      <version>2.2.0</version>
    </dependency>
  2. 接入Java SDK。

    • 提交URL風險檢測任務代碼示例

      import com.alibaba.fastjson.JSON;
      import com.aliyun.green20220302.Client;
      import com.aliyun.green20220302.models.UrlAsyncModerationRequest;
      import com.aliyun.green20220302.models.UrlAsyncModerationResponse;
      import com.aliyun.green20220302.models.UrlAsyncModerationResponseBody;
      import com.aliyun.teaopenapi.models.Config;
      import com.aliyun.teautil.models.RuntimeOptions;
      
      import java.util.HashMap;
      import java.util.Map;
      import java.util.UUID;
      
      public class UrlAsyncModerationDemo {
      
          /**
           * 創建請求客戶端
           *
           * @param accessKeyId
           * @param accessKeySecret
           * @param endpoint
           * @return
           * @throws Exception
           */
          public static Client createClient(String accessKeyId, String accessKeySecret, String endpoint) throws Exception {
              Config config = new Config();
              config.setAccessKeyId(accessKeyId);
              config.setAccessKeySecret(accessKeySecret);
              // 設置http代理。
              // config.setHttpProxy("http://10.10.xx.xx:xxxx");
              // 設置https代理。
              // config.setHttpsProxy("https://10.10.xx.xx:xxxx");
              // 接入區域和地址請根據實際情況修改
              config.setEndpoint(endpoint);
              return new Client(config);
          }
      
          public static UrlAsyncModerationResponse invokeFunction(String accessKeyId, String accessKeySecret, String endpoint) throws Exception {
              //注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
              Client client = createClient(accessKeyId, accessKeySecret, endpoint);
      
              // 創建RuntimeObject實例并設置運行參數
              RuntimeOptions runtime = new RuntimeOptions();
      
              // 檢測參數構造。
              Map<String, String> serviceParameters = new HashMap<>();
              //公網可訪問的URL。
              serviceParameters.put("url", "https://www.aliyun.com/");
              //檢測數據唯一標識。
              serviceParameters.put("dataId", UUID.randomUUID().toString());
              //檢測結果回調通知您的URL。
              serviceParameters.put("callback", "http://www.aliyun.com");
              //隨機字符串,該值用于回調通知請求中的簽名。
              serviceParameters.put("seed", "seedCode");
              //使用回調通知時(callback),設置對回調通知內容進行簽名的算法。
              serviceParameters.put("cryptType", "SM3");
      
              UrlAsyncModerationRequest request = new UrlAsyncModerationRequest();
              // url檢測service,示例:url_detection_pro
              request.setService("url_detection_pro");
              request.setServiceParameters(JSON.toJSONString(serviceParameters));
      
              UrlAsyncModerationResponse response = null;
              try {
                  response = client.urlAsyncModerationWithOptions(request, runtime);
              } catch (Exception e) {
                  e.printStackTrace();
              }
              return response;
          }
      
          public static void main(String[] args) throws Exception {
              /**
               * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
               * 常見獲取環境變量方式:
               * 方式一:
               *     獲取RAM用戶AccessKey ID:System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
               *     獲取RAM用戶AccessKey Secret:System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
               * 方式二:
               *     獲取RAM用戶AccessKey ID:System.getProperty("ALIBABA_CLOUD_ACCESS_KEY_ID");
               *     獲取RAM用戶AccessKey Secret:System.getProperty("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
               */
              String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
              String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
              UrlAsyncModerationResponse response = invokeFunction(accessKeyId, accessKeySecret, "green-cip.cn-shanghai.aliyuncs.com");
      
              // 打印檢測結果。
              if (response != null) {
                  if (response.getStatusCode() == 200) {
                      //返回結果中包含reqId字段,獲取異步檢測結果時將該字段作為入參,獲取圖片檢測結果
                      UrlAsyncModerationResponseBody body = response.getBody();
                      if (body.getCode() == 200) {
                          System.out.println(JSON.toJSONString(body));
                      } else {
                          System.out.println("url moderation not success. code:" + body.getCode());
                      }
                  } else {
                      System.out.println("response not success. status:" + response.getStatusCode());
                  }
              }
          }
      }
    • 獲取URL風險檢測任務結果代碼示例

      package com.example.demo.cip.image;
      
      import com.alibaba.fastjson.JSON;
      import com.aliyun.green20220302.Client;
      import com.aliyun.green20220302.models.DescribeUrlModerationResultRequest;
      import com.aliyun.green20220302.models.DescribeUrlModerationResultResponse;
      import com.aliyun.teaopenapi.models.Config;
      import com.aliyun.teautil.models.RuntimeOptions;
      
      public class DescribeUrlModerationResultDemo {
          /**
           * 創建請求客戶端
           *
           * @param accessKeyId
           * @param accessKeySecret
           * @param endpoint
           * @return
           * @throws Exception
           */
          public static Client createClient(String accessKeyId, String accessKeySecret, String endpoint) throws Exception {
              Config config = new Config();
              config.setAccessKeyId(accessKeyId);
              config.setAccessKeySecret(accessKeySecret);
              // 設置http代理。
              // config.setHttpProxy("http://10.10.xx.xx:xxxx");
              // 設置https代理。
              // config.setHttpsProxy("https://10.10.xx.xx:xxxx");
              // 接入區域和地址請根據實際情況修改
              config.setEndpoint(endpoint);
              return new Client(config);
          }
      
          public static DescribeUrlModerationResultResponse invokeFunction(String accessKeyId, String accessKeySecret, String endpoint) throws Exception {
              //注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
              Client client = createClient(accessKeyId, accessKeySecret, endpoint);
      
              // 創建RuntimeObject實例并設置運行參數
              RuntimeOptions runtime = new RuntimeOptions();
      
              //構造請求入參
              DescribeUrlModerationResultRequest request = new DescribeUrlModerationResultRequest();
              //將提交異步檢測任務時返回值中的reqId作為獲取結果的入參。例如:DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44
              request.setReqId("DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44");
      
              DescribeUrlModerationResultResponse response = null;
              try {
                  response = client.describeUrlModerationResultWithOptions(request, runtime);
              } catch (Exception e) {
                  e.printStackTrace();
              }
              return response;
          }
      
          public static void main(String[] args) throws Exception {
              /**
               * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
               * 常見獲取環境變量方式:
               * 方式一:
               *     獲取RAM用戶AccessKey ID:System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
               *     獲取RAM用戶AccessKey Secret:System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
               * 方式二:
               *     獲取RAM用戶AccessKey ID:System.getProperty("ALIBABA_CLOUD_ACCESS_KEY_ID");
               *     獲取RAM用戶AccessKey Secret:System.getProperty("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
               */
              String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
              String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
              DescribeUrlModerationResultResponse response = invokeFunction(accessKeyId, accessKeySecret, "green-cip.cn-shanghai.aliyuncs.com");
      
              // 打印檢測結果。
              if (response != null) {
                  if (response.getStatusCode() == 200) {
                      System.out.println(JSON.toJSONString(response.getBody()));
                  } else {
                      System.out.println("response not success. status:" + response.getStatusCode());
                  }
              }
      
          }
      }

Python SDK

支持Python 3.6及以上版本。

  1. 執行如下命令安裝pip。

    pip install alibabacloud_green20220302==2.2.0
  2. 接入Python SDK。

    • 提交URL風險檢測任務代碼示例

      from alibabacloud_green20220302.client import Client
      from alibabacloud_green20220302 import models
      from alibabacloud_tea_openapi.models import Config
      from alibabacloud_tea_util import models as util_models
      import json
      import os
      import uuid
      
      
      # 創建請求客戶端
      def create_client(access_key_id, access_key_secret, endpoint):
          config = Config(
              access_key_id=access_key_id,
              access_key_secret=access_key_secret,
              # 設置http代理。
              # http_proxy='http://10.10.xx.xx:xxxx',
              # 設置https代理。
              # https_proxy='https://10.10.xx.xx:xxxx',
              # 接入區域和地址請根據實際情況修改。
              endpoint=endpoint
          )
          return Client(config)
      
      
      def invoke_function(access_key_id, access_key_secret, endpoint):
          # 注意:此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
          client = create_client(access_key_id, access_key_secret, endpoint)
          # 創建RuntimeObject實例并設置運行參數。
          runtime = util_models.RuntimeOptions()
      
          # 檢測參數構造。
          service_parameters = {
              # 公網可訪問的url。
              'url': 'https://www.aliyun.com/',
              # 數據唯一標識
              'dataId': str(uuid.uuid1()),
              # 檢測結果回調通知您的URL。
              'callback': 'http://www.aliyun.com',
              # 隨機字符串,該值用于回調通知請求中的簽名。
              'seed': 'seedCode',
              # 使用回調通知時(callback),設置對回調通知內容進行簽名的算法。
              'cryptType': 'SM3'
          }
      
          url_image_moderation_request = models.UrlAsyncModerationRequest(
              # url檢測service,示例:url_detection_pro
              service='url_detection_pro',
              service_parameters=json.dumps(service_parameters)
          )
      
          try:
              return client.url_async_moderation_with_options(url_image_moderation_request, runtime),
          except Exception as err:
              print(err)
      
      
      if __name__ == '__main__':
          access_key_id = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
          access_key_secret = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
          # 接入區域和地址請根據實際情況修改。
          response = invoke_function(access_key_id, access_key_secret, 'green-cip.cn-shanghai.aliyuncs.com')
          # 打印結果。
          if len(response) >= 1:
              if response[0].status_code == 200:
                  # 調用成功。
                  # 獲取結果ReqId。
                  result = response[0].body
                  print('response success. result:{}'.format(result))
                  if result.code == 200:
                      result_data = result.data
                      print('result: {}'.format(result_data))
              else:
                  print('response not success. status:{} ,result:{}'.format(response.status_code, response))
    • 獲取URL風險檢測任務結果代碼示例

      from alibabacloud_green20220302.client import Client
      from alibabacloud_green20220302 import models
      from alibabacloud_tea_openapi.models import Config
      from alibabacloud_tea_util import models as util_models
      import os
      
      
      # 創建請求客戶端
      def create_client(access_key_id, access_key_secret, endpoint):
          config = Config(
              access_key_id=access_key_id,
              access_key_secret=access_key_secret,
              # 設置http代理。
              # http_proxy='http://10.10.xx.xx:xxxx',
              # 設置https代理。
              # https_proxy='https://10.10.xx.xx:xxxx',
              # 接入區域和地址請根據實際情況修改。
              endpoint=endpoint
          )
          return Client(config)
      
      
      def invoke_function(access_key_id, access_key_secret, endpoint):
          # 注意:此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
          client = create_client(access_key_id, access_key_secret, endpoint)
          # 創建RuntimeObject實例并設置運行參數。
          runtime = util_models.RuntimeOptions()
      
          # 構造請求入參。
          describe_result_request = models.DescribeUrlModerationResultRequest(
              # 將提交異步檢測任務時返回值中的ReqId作為獲取結果的入參。例如:DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44
              req_id='DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44',
          )
      
          try:
              return client.describe_url_moderation_result_with_options(describe_result_request, runtime)
          except Exception as err:
              print(err)
      
      
      if __name__ == '__main__':
          access_key_id = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
          access_key_secret = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
          # 接入區域和地址請根據實際情況修改。
          response = invoke_function(access_key_id, access_key_secret, 'green-cip.cn-shanghai.aliyuncs.com')
          # 打印結果。
          if response is not None:
              if response.status_code == 200:
                  # 調用成功。
                  # 獲取審核結果。
                  result = response.body
                  print('response success. result:{}'.format(result))
                  if result.code == 200:
                      result_data = result.data
                      print('result: {}'.format(result_data))
              else:
                  print('response not success. status:{} ,result:{}'.format(response.status_code, response))

PHP SDK

支持PHP 5.6及以上版本。

  1. 執行如下命令引入相關依賴。

    composer require alibabacloud/green-20220302 2.2.0
  2. 接入PHP SDK。

    • 提交URL風險檢測任務代碼示例

      <?php
      require('../../../vendor/autoload.php');
      
      use AlibabaCloud\SDK\Green\V20220302\Models\UrlAsyncModerationResponse;
      use Darabonba\OpenApi\Models\Config;
      use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
      use AlibabaCloud\SDK\Green\V20220302\Green;
      use AlibabaCloud\SDK\Green\V20220302\Models\UrlAsyncModerationRequest;
      
      /**
       * 創建請求客戶端
       * @param $accessKeyId
       * @param $accessKeySecret
       * @param $endpoint
       * @return Green
       */
      function create_client($accessKeyId, $accessKeySecret, $endpoint): Green
      {
          $config = new Config([
              "accessKeyId" => $accessKeyId,
              "accessKeySecret" => $accessKeySecret,
              // 設置HTTP代理。
              // "httpProxy" => "http://10.10.xx.xx:xxxx",
              // 設置HTTPS代理。
              // "httpsProxy" => "https://10.10.xx.xx:xxxx",
              "endpoint" => $endpoint,
          ]);
          return new Green($config);
      }
      
      /**
       * 提交檢測任務
       * @param $accessKeyId
       * @param $accessKeySecret
       * @param $endpoint
       * @return UrlAsyncModerationResponse
       */
      function invoke($accessKeyId, $accessKeySecret, $endpoint): UrlAsyncModerationResponse
      {
          // 注意:此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
          $client = create_client($accessKeyId, $accessKeySecret, $endpoint);
          // 創建RuntimeObject實例并設置運行參數。
          $runtime = new RuntimeOptions([]);
          // 檢測參數構造。
          $request = new UrlAsyncModerationRequest();
          $serviceParameters = array(
              // 待檢測url,公網可訪問的URL。
              'url' => 'https://aliyun.com',
              // 檢測數據唯一標識。
              'dataId' => uniqid(),
              // 檢測結果回調通知您的URL。
              'callback' => 'http://www.aliyun.com',
              //隨機字符串,該值用于回調通知請求中的簽名。
              'seed' => 'seedCode',
              // 使用回調通知時(callback),設置對回調通知內容進行簽名的算法。
              'cryptType' => 'SM3'
          );
          // URL檢測service,示例:url_detection_pro
          $request->service = "url_detection_pro";
          $request->serviceParameters = json_encode($serviceParameters);
          // 提交檢測
          return $client->urlAsyncModerationWithOptions($request, $runtime);
      }
      
      $accessKeyId = getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
      $accessKeySecret = getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
      $endpoint = "green-cip.cn-shanghai.aliyuncs.com";
      
      try {
          $response = invoke($accessKeyId, $accessKeySecret, $endpoint);
          //返回結果中包含reqId字段,獲取異步檢測結果時將該字段作為入參,獲取圖片檢測結果
          print_r(json_encode($response->body, JSON_UNESCAPED_UNICODE));
      } catch (Exception $e) {
          var_dump($e->getMessage());
          var_dump($e->getErrorInfo());
          var_dump($e->getLastException());
          var_dump($e->getLastRequest());
      }
    • 獲取URL風險檢測任務結果代碼示例

      <?php
      require('../../../vendor/autoload.php');
      
      use AlibabaCloud\SDK\Green\V20220302\Models\DescribeUrlModerationResultResponse;
      use Darabonba\OpenApi\Models\Config;
      use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
      use AlibabaCloud\SDK\Green\V20220302\Green;
      use AlibabaCloud\SDK\Green\V20220302\Models\DescribeUrlModerationResultRequest;
      
      /**
       * 創建請求客戶端
       * @param $accessKeyId
       * @param $accessKeySecret
       * @param $endpoint
       * @return Green
       */
      function create_client($accessKeyId, $accessKeySecret, $endpoint): Green
      {
          $config = new Config([
              "accessKeyId" => $accessKeyId,
              "accessKeySecret" => $accessKeySecret,
              "endpoint" => $endpoint,
          ]);
          return new Green($config);
      }
      
      /**
       * 提交檢測任務
       * @param $accessKeyId
       * @param $accessKeySecret
       * @param $endpoint
       * @return DescribeUrlModerationResultResponse
       */
      function invoke($accessKeyId, $accessKeySecret, $endpoint): DescribeUrlModerationResultResponse
      {
          // 注意:此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
          $client = create_client($accessKeyId, $accessKeySecret, $endpoint);
          // 創建RuntimeObject實例并設置運行參數。
          $runtime = new RuntimeOptions([]);
          // 請求參數構造。
          $request = new DescribeUrlModerationResultRequest();
          // 將提交異步檢測任務時返回值中的reqId作為獲取結果的入參。例如:DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44
          $request->reqId = "DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44";
          // 提交檢測
          return $client->describeUrlModerationResultWithOptions($request, $runtime);
      }
      
      $accessKeyId = getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
      $accessKeySecret = getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
      $endpoint = "green-cip.cn-shanghai.aliyuncs.com";
      
      try {
          $response = invoke($accessKeyId, $accessKeySecret, $endpoint);
          print_r(json_encode($response->body, JSON_UNESCAPED_UNICODE));
      } catch (Exception $e) {
          var_dump($e->getMessage());
          var_dump($e->getErrorInfo());
          var_dump($e->getLastException());
          var_dump($e->getLastRequest());
      }

Go SDK

  1. 執行如下命令引入相關依賴。

    go get github.com/alibabacloud-go/green-20220302/v2
  2. 接入Go SDK。

    • 提交URL風險檢測任務代碼示例

      package main
      
      import (
      	"encoding/json"
      	"fmt"
      	openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
      	green20220302 "github.com/alibabacloud-go/green-20220302/v2/client"
      	util "github.com/alibabacloud-go/tea-utils/v2/service"
      	"github.com/alibabacloud-go/tea/tea"
      	"github.com/google/uuid"
      	"net/http"
      	"os"
      )
      
      //創建請求客戶端
      func createClient(accessKeyId *string, accessKeySecret *string, endpoint *string) (*green20220302.Client, error) {
      	config := &openapi.Config{
      		/**
      		 * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
      		 * 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
      		 * 常見獲取環境變量方式:
      		 * 獲取RAM用戶AccessKey ID:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
      		 * 獲取RAM用戶AccessKey Secret:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
      		 */
      		AccessKeyId:     accessKeyId,
      		AccessKeySecret: accessKeySecret,
      		// 設置HTTP代理。
      		// HttpProxy: tea.String("http://10.10.xx.xx:xxxx"),
      		// 設置HTTPS代理。
      		// HttpsProxy: tea.String("https://username:password@xxx.xxx.xxx.xxx:9999"),
      		Endpoint: endpoint,
      	}
      	//注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
      	return green20220302.NewClient(config)
      }
      
      func invoke(accessKeyId *string, accessKeySecret *string, endpoint *string) (_result *green20220302.UrlAsyncModerationResponse, _err error) {
      	//注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
      	client, _err := createClient(accessKeyId, accessKeySecret, endpoint)
      	if _err != nil {
      		return nil, _err
      	}
      	//運行時參數設置,僅對使用了該運行時參數實例的請求有效
      	runtime := &util.RuntimeOptions{}
      
      	//構建圖片檢測請求。
      	serviceParameters, _ := json.Marshal(
      		map[string]interface{}{
      			// 待檢測url鏈接,公網可訪問的URL。
      			"url": "https://www.aliyun.com",
      			// 待檢測數據的ID。
      			"dataId": uuid.New(),
      			// 檢測結果回調通知您的URL。
      			"callback": "http://www.aliyun.com",
      			// 隨機字符串,該值用于回調通知請求中的簽名。
      			"seed": "seedCode",
      			// 使用回調通知時(callback),設置對回調通知內容進行簽名的算法。
      			"cryptType": "SM3",
      		},
      	)
      	imageModerationRequest := &green20220302.UrlAsyncModerationRequest{
      		//url檢測service,示例:url_detection_pro
      		Service:           tea.String("url_detection_pro"),
      		ServiceParameters: tea.String(string(serviceParameters)),
      	}
      
      	return client.UrlAsyncModerationWithOptions(imageModerationRequest, runtime)
      
      }
      
      func main() {
      	/**
      	 * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
      	 * 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
      	 * 常見獲取環境變量方式:
      	 * 獲取RAM用戶AccessKey ID:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
      	 * 獲取RAM用戶AccessKey Secret:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
      	 */
      	//var accessKeyId= tea.String("建議從環境變量中獲取RAM用戶AccessKey ID");
      	//var accessKeySecret= tea.String("建議從環境變量中獲取RAM用戶AccessKey Secret");
      	var accessKeyId = tea.String(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
      	var accessKeySecret = tea.String(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
      	//接入區域和地址請根據實際情況修改
      	var endpoint = tea.String("green-cip.cn-shanghai.aliyuncs.com")
      	response, _err := invoke(accessKeyId, accessKeySecret, endpoint)
      
      	if response != nil {
      		statusCode := tea.IntValue(tea.ToInt(response.StatusCode))
      		body := response.Body
      		imageModerationResponseData := body.Data
      		if statusCode == http.StatusOK {
      			fmt.Println("response success. response:" + body.String())
      			if tea.IntValue(tea.ToInt(body.Code)) == 200 {
      				// 返回結果中包含ReqId字段,獲取異步檢測結果時將該字段作為入參,獲取圖片檢測結果
      				fmt.Println("response ReqId:" + tea.StringValue(imageModerationResponseData.ReqId))
      			} else {
      				fmt.Println("url moderation not success. status" + tea.ToString(body.Code))
      			}
      		} else {
      			fmt.Print("response not success. status:" + tea.ToString(statusCode))
      			fmt.Println("Error:", _err)
      		}
      	}
      }
    • 獲取URL風險檢測任務結果代碼示例

      package main
      
      import (
      	"fmt"
      	openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
      	green20220302 "github.com/alibabacloud-go/green-20220302/v2/client"
      	util "github.com/alibabacloud-go/tea-utils/v2/service"
      	"github.com/alibabacloud-go/tea/tea"
      	"net/http"
      	"os"
      )
      
      //創建請求客戶端
      func createClient(accessKeyId *string, accessKeySecret *string, endpoint *string) (*green20220302.Client, error) {
      	config := &openapi.Config{
      		/**
      		 * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
      		 * 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
      		 * 常見獲取環境變量方式:
      		 * 獲取RAM用戶AccessKey ID:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
      		 * 獲取RAM用戶AccessKey Secret:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
      		 */
      		AccessKeyId:     accessKeyId,
      		AccessKeySecret: accessKeySecret,
      		// 設置HTTP代理。
      		// HttpProxy: tea.String("http://10.10.xx.xx:xxxx"),
      		// 設置HTTPS代理。
      		// HttpsProxy: tea.String("https://username:password@xxx.xxx.xxx.xxx:9999"),
      		Endpoint: endpoint,
      	}
      	//注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
      	return green20220302.NewClient(config)
      }
      
      func invoke(accessKeyId *string, accessKeySecret *string, endpoint *string) (_result *green20220302.DescribeUrlModerationResultResponse, _err error) {
      	//注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
      	client, _err := createClient(accessKeyId, accessKeySecret, endpoint)
      	if _err != nil {
      		return nil, _err
      	}
      	//運行時參數設置,僅對使用了該運行時參數實例的請求有效
      	runtime := &util.RuntimeOptions{}
      
      	//構建請求。
      	imageModerationRequest := &green20220302.DescribeUrlModerationResultRequest{
      		// 將提交異步檢測任務時返回值中的ReqId作為獲取結果的入參。例如:DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44
      		ReqId:           tea.String("DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44"),
      	}
      
      	return client.DescribeUrlModerationResultWithOptions(imageModerationRequest, runtime)
      
      }
      
      func main() {
      	/**
      	 * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
      	 * 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
      	 * 常見獲取環境變量方式:
      	 * 獲取RAM用戶AccessKey ID:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
      	 * 獲取RAM用戶AccessKey Secret:os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
      	 */
      	//var accessKeyId= tea.String("建議從環境變量中獲取RAM用戶AccessKey ID");
      	//var accessKeySecret= tea.String("建議從環境變量中獲取RAM用戶AccessKey Secret");
      	var accessKeyId = tea.String(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
      	var accessKeySecret = tea.String(os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
      	//接入區域和地址請根據實際情況修改
      	var endpoint = tea.String("green-cip.cn-shanghai.aliyuncs.com")
      	response, _err := invoke(accessKeyId, accessKeySecret, endpoint)
      
      	if response != nil {
      		statusCode := tea.IntValue(tea.ToInt(response.StatusCode))
      		body := response.Body
      		imageModerationResponseData := body.Data
      		fmt.Println("requestId:" + tea.StringValue(body.RequestId))
      		if statusCode == http.StatusOK {
      			fmt.Println("response success. response:" + imageModerationResponseData.String())
      		} else {
      			fmt.Print("response not success. status:" + tea.ToString(statusCode))
      			fmt.Println("Error:", _err)
      		}
      	}
      }

Nodejs SDK

  1. 執行如下命令引入相關依賴。

    npm install @alicloud/green20220302@2.2.0
  2. 接入Nodejs SDK。

    • 提交URL風險檢測任務代碼示例

      const RPCClient = require("@alicloud/pop-core");
      const { v4: uuidv4 } = require('uuid');
      
      async function main() {
          // 注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
          var client = new RPCClient({
              // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
              accessKeyId: process.env['ALIBABA_CLOUD_ACCESS_KEY_ID'],
              accessKeySecret: process.env['ALIBABA_CLOUD_ACCESS_KEY_SECRET'],
              // 接入區域和地址請根據實際情況修改
              endpoint: "https://green-cip.cn-shanghai.aliyuncs.com",
              apiVersion: '2022-03-02',
              // 設置http代理
              // httpProxy: "http://xx.xx.xx.xx:xxxx",
              // 設置https代理
              // httpsProxy: "https://username:password@xxx.xxx.xxx.xxx:9999",
          });
          // 通過以下代碼創建API請求并設置參數。
          var params = {
              // url檢測service,示例:url_detection_pro
              "Service": "url_detection_pro",
              "ServiceParameters": JSON.stringify({
                  //數據ID唯一標識
                  "dataId": uuidv4(),
                  //待檢測url鏈接, 公網可訪問。
                  "url": "https://www.aliyun.com",
                  // 檢測結果回調通知您的URL。
                  "callback": "http://www.aliyun.com",
                  //隨機字符串,該值用于回調通知請求中的簽名。
                  "seed": "seedCode",
                  // 使用回調通知時(callback),設置對回調通知內容進行簽名的算法。
                  "cryptType": "SM3"
              })
          }
      
          var requestOption = {
              method: 'POST',
              formatParams: false,
          };
      
          try {
              //調用接口獲取結果。
              var response = await client.request('UrlAsyncModeration', params, requestOption)
          } catch (err) {
              console.log(err);
          }
          return response;
      }
      
      main().then(function (response) {
          //返回結果中包含ReqId字段,獲取異步檢測結果時將該字段作為入參,獲取圖片檢測結果
          console.log(JSON.stringify(response))
      });
    • 獲取URL風險檢測任務結果代碼示例

      const RPCClient = require("@alicloud/pop-core");
      const { v4: uuidv4 } = require('uuid');
      
      async function main() {
          // 注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
          var client = new RPCClient({
              // 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
              accessKeyId: process.env['ALIBABA_CLOUD_ACCESS_KEY_ID'],
              accessKeySecret: process.env['ALIBABA_CLOUD_ACCESS_KEY_SECRET'],
              // 接入區域和地址請根據實際情況修改
              endpoint: "https://green-cip.cn-shanghai.aliyuncs.com",
              apiVersion: '2022-03-02',
              // 設置http代理
              // httpProxy: "http://xx.xx.xx.xx:xxxx",
              // 設置https代理
              // httpsProxy: "https://username:password@xxx.xxx.xxx.xxx:9999",
          });
          // 通過以下代碼創建API請求并設置參數。
          var params = {
              // 將提交異步檢測任務時返回值中的ReqId作為獲取結果的入參。例如:DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44
              "ReqId": "DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44",
          }
      
          var requestOption = {
              method: 'POST',
              formatParams: false,
          };
      
          try {
              //調用接口獲取檢測結果。
              var response = await client.request('DescribeUrlModerationResult', params, requestOption)
          } catch (err) {
              console.log(err);
          }
      
          return response;
      }
      
      main().then(function (response) {
          console.log(JSON.stringify(response))
      });

C# SDK

  1. 執行如下命令引入相關依賴。

    dotnet add package AlibabaCloud.SDK.Green20220302 --version 2.2.0
  2. 接入C# SDK。

    • 提交URL風險檢測任務代碼示例

      using Newtonsoft.Json;
      
      namespace AlibabaCloud.SDK.Green20220302
      {
          public class ImageModerationAutoRoute
          {
              public static void Main(string[] args)
              {
                  /**
                  * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
                  * 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
                  * 常見獲取環境變量方式:
                  * 獲取RAM用戶AccessKey ID:Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID")
                  * 獲取RAM用戶AccessKey Secret:Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
                  */
                  String accessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID");
                  String accessKeySecret = Environment.GetEnvironmentVariable(
                      "ALIBABA_CLOUD_ACCESS_KEY_SECRET"
                  );
                  // 接入區域和地址請根據實際情況修改
                  String endpoint = "green-cip.cn-shanghai.aliyuncs.com";
                  //注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
                  Client client = createClient(accessKeyId, accessKeySecret, endpoint);
      
                  // 運行時參數設置,僅對使用了該運行時參數實例的請求有效
                  AlibabaCloud.TeaUtil.Models.RuntimeOptions runtimeOptions =
                      new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
      
                  //構建URL檢測請求。
                  Models.UrlAsyncModerationRequest imageModerationRequest =
                      new Models.UrlAsyncModerationRequest();
                  //url檢測service,示例:url_detection_pro
                  imageModerationRequest.Service = "url_detection_pro";
                  Dictionary<string, object> task = new Dictionary<string, object>();
                  //待檢測url鏈接,公網可訪問的URL。
                  task.Add(
                      "url",
                      "https://www.aliyun.com"
                  );
                  //待檢測數據的ID。
                  task.Add("dataId", Guid.NewGuid().ToString());
                  // 檢測結果回調通知您的URL。
                  task.Add("callback", "http://www.aliyun.com");
                  // 隨機字符串,該值用于回調通知請求中的簽名。
                  task.Add("seed", "seedCode");
                  // 使用回調通知時(callback),設置對回調通知內容進行簽名的算法。
                  task.Add("cryptType", "SM3");
                  imageModerationRequest.ServiceParameters = JsonConvert.SerializeObject(task);
      
                  try
                  {
                      //調用API獲取檢測結果。
                      Models.UrlAsyncModerationResponse response =
                          client.UrlAsyncModerationWithOptions(imageModerationRequest, runtimeOptions);
                      // 返回結果中包含ReqId字段,獲取異步檢測結果時將該字段作為入參,獲取圖片檢測結果
                      Console.WriteLine(response.Body.RequestId);
                      Console.WriteLine(JsonConvert.SerializeObject(response.Body));
                  }
                  catch (Exception _err)
                  {
                      Console.WriteLine(_err);
                  }
              }
      
              //創建請求客戶端
              public static Client createClient(
                  String accessKeyId,
                  String accessKeySecret,
                  String endpoint
              )
              {
                  AlibabaCloud.OpenApiClient.Models.Config config =
                      new AlibabaCloud.OpenApiClient.Models.Config
                      {
                          AccessKeyId = accessKeyId,
                          AccessKeySecret = accessKeySecret,
                          //設置HTTP代理。
                          //HttpProxy = "http://10.10.xx.xx:xxxx",
                          //設置HTTPS代理。
                          //HttpsProxy = "https://username:password@xxx.xxx.xxx.xxx:9999",
                          //訪問的域名。
                          Endpoint = endpoint,
                      };
                  return new Client(config);
              }
          }
      }
    • 獲取URL風險檢測任務結果代碼示例

      using Newtonsoft.Json;
      
      namespace AlibabaCloud.SDK.Green20220302
      {
          public class ImageModerationAutoRoute
          {
              public static void Main(string[] args)
              {
                  /**
                  * 阿里云賬號AccessKey擁有所有API的訪問權限,建議您使用RAM用戶進行API訪問或日常運維。
                  * 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導致AccessKey泄露,威脅您賬號下所有資源的安全。
                  * 常見獲取環境變量方式:
                  * 獲取RAM用戶AccessKey ID:Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID")
                  * 獲取RAM用戶AccessKey Secret:Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
                  */
                  String accessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID");
                  String accessKeySecret = Environment.GetEnvironmentVariable(
                      "ALIBABA_CLOUD_ACCESS_KEY_SECRET"
                  );
                  // 接入區域和地址請根據實際情況修改
                  String endpoint = "green-cip.cn-shanghai.aliyuncs.com";
                  //注意,此處實例化的client請盡可能重復使用,避免重復建立連接,提升檢測性能。
                  Client client = createClient(accessKeyId, accessKeySecret, endpoint);
      
                  // 運行時參數設置,僅對使用了該運行時參數實例的請求有效
                  AlibabaCloud.TeaUtil.Models.RuntimeOptions runtimeOptions =
                      new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
      
                  //構建URL檢測請求。
                  Models.DescribeUrlModerationResultRequest imageModerationRequest =
                      new Models.DescribeUrlModerationResultRequest();
                  //將提交異步檢測任務時返回值中的ReqId作為獲取結果的入參。例如:DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44
                  imageModerationRequest.ReqId = "DFEXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX44";
      
                  try
                  {
                      //調用API獲取檢測結果。
                      Models.DescribeUrlModerationResultResponse response = client.DescribeUrlModerationResultWithOptions(
                          imageModerationRequest,
                          runtimeOptions
                      );
      
                      Console.WriteLine(response.Body.RequestId);
                      Console.WriteLine(JsonConvert.SerializeObject(response.Body));
                  }
                  catch (Exception _err)
                  {
                      Console.WriteLine(_err);
                  }
              }
      
              //創建請求客戶端
              public static Client createClient(
                  String accessKeyId,
                  String accessKeySecret,
                  String endpoint
              )
              {
                  AlibabaCloud.OpenApiClient.Models.Config config =
                      new AlibabaCloud.OpenApiClient.Models.Config
                      {
                          AccessKeyId = accessKeyId,
                          AccessKeySecret = accessKeySecret,
                          //設置HTTP代理。
                          //HttpProxy = "http://10.10.xx.xx:xxxx",
                          //設置HTTPS代理。
                          //HttpsProxy = "https://username:password@xxx.xxx.xxx.xxx:9999",
                          //訪問的域名。
                          Endpoint = endpoint,
                      };
                  return new Client(config);
              }
          }
      }

如果您在使用過程中出現問題,請加入釘群(釘群號:35573806),聯系產品技術專家進行咨詢。