Image exposure assessment
Updated at:
This document provides sample code for image exposure assessment in popular programming languages and for various scenarios.
Note
-
For real-time assistance, start an online consultation.
-
If you have questions about API access or usage for the Alibaba Cloud Vision AI Platform, join our DingTalk group (ID: 23109592) to contact us.
Overview
For an overview of the image exposure assessment feature and a detailed description of its request parameters, see Image exposure assessment.
Install the SDK package
For information about SDK dependencies, see the SDK overview.
<ACCESS_KEY_ID>
Sample code
Image from an OSS bucket in Shanghai
/*
Install the dependency.
<!-- https://mvnrepository.com/artifact/com.aliyun/imageenhan20190930 -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>imageenhan20190930</artifactId>
<version>${aliyun.imageenhan.version}</version>
</dependency>
*/
import com.aliyun.imageenhan20190930.models.AssessExposureResponse;
import com.aliyun.tea.TeaException;
import com.aliyun.tea.TeaModel;
public class AssessExposure {
public static com.aliyun.imageenhan20190930.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
/*
Initialize the configuration object com.aliyun.teaopenapi.models.Config.
This object stores configurations such as your AccessKey ID, AccessKey Secret, and endpoint.
*/
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
.setAccessKeyId(accessKeyId)
.setAccessKeySecret(accessKeySecret);
// The endpoint of the service.
config.endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new com.aliyun.imageenhan20190930.Client(config);
}
public static void main(String[] args_) throws Exception {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
com.aliyun.imageenhan20190930.Client client = AssessExposure.createClient(accessKeyId, accessKeySecret);
com.aliyun.imageenhan20190930.models.AssessExposureRequest assessExposureRequest = new com.aliyun.imageenhan20190930.models.AssessExposureRequest()
.setImageURL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
AssessExposureResponse assessExposureResponse = client.assessExposureWithOptions(assessExposureRequest, runtime);
// Get the complete response.
System.out.println(com.aliyun.teautil.Common.toJSONString(TeaModel.buildMap(assessExposureResponse)));
// Get a specific field.
System.out.println(assessExposureResponse.getBody());
} catch (TeaException teaException) {
// Get the complete error message.
System.out.println(com.aliyun.teautil.Common.toJSONString(teaException));
// Get a specific field.
System.out.println(teaException.getCode());
}
}
}# -*- coding: utf-8 -*-
# Install the dependency.
# pip install alibabacloud_imageenhan20190930
import os
from alibabacloud_imageenhan20190930.client import Client
from alibabacloud_imageenhan20190930.models import AssessExposureRequest
from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions
config = Config(
# To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
# If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
# The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
access_key_id=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),
access_key_secret=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
# The endpoint of the service.
endpoint='imageenhan.cn-shanghai.aliyuncs.com',
# The region ID that corresponds to the endpoint.
region_id='cn-shanghai'
)
assess_exposure_request = AssessExposureRequest(
image_url='http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg'
)
runtime = RuntimeOptions()
try:
# Initialize the client.
client = Client(config)
response = client.assess_exposure_with_options(assess_exposure_request, runtime)
# Get the complete response.
print(response.body)
except Exception as error:
# Get the complete error message.
print(error)
# Get a specific field.
print(error.code)<?php
// Install the dependency.
//composer require alibabacloud/imageenhan-20190930
use AlibabaCloud\SDK\Imageenhan\V20190930\Imageenhan;
use \Exception;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Imageenhan\V20190930\Models\AssessExposureRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
class AssessExposure {
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param string $accessKeyId
* @param string $accessKeySecret
* @return Imageenhan Client
*/
public static function createClient($accessKeyId, $accessKeySecret){
//Initialize the configuration object Darabonba\OpenApi\Models\Config.
//This object stores configurations such as your AccessKey ID, AccessKey Secret, and endpoint.
$config = new Config([
"accessKeyId" => $accessKeyId,
"accessKeySecret" => $accessKeySecret
]);
// The endpoint of the service.
$config->endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new Imageenhan($config);
}
/**
* @param string[] $args
* @return void
*/
public static function main($args){
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
$accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');
$accessKeySecret = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
$client = self::createClient($accessKeyId, $accessKeySecret);
$assessExposureRequest = new AssessExposureRequest([
"imageURL" => "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg"
]);
$runtime = new RuntimeOptions([]);
try {
$resp = $client->assessExposureWithOptions($assessExposureRequest, $runtime);
# Get the complete response.
echo Utils::toJSONString($resp->body);
} catch (Exception $exception) {
# Get the complete error message.
echo Utils::toJSONString($exception);
# Get a specific field.
}
}
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
// The $argv parameter is a reserved array for input arguments and does not need to be modified.
AssessExposure::main(array_slice($argv, 1));// Install the SDK package.
// npm install @alicloud/imageenhan20190930
const ImageenhanClient = require('@alicloud/imageenhan20190930');
const OpenapiClient = require('@alicloud/openapi-client');
const TeaUtil = require('@alicloud/tea-util');
let config = new OpenapiClient.Config({
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET
});
// The endpoint of the service.
config.endpoint = `imageenhan.cn-shanghai.aliyuncs.com`;
const client = new ImageenhanClient.default(config);
let assessExposureRequest = new ImageenhanClient.AssessExposureRequest({
imageURL: "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg",
});
let runtime = new TeaUtil.RuntimeOptions({});
client.assessExposureWithOptions(assessExposureRequest, runtime)
.then(function (assessExposureResponse) {
// Get the complete response.
console.log(assessExposureResponse);
// Get a specific field.
console.log(assessExposureResponse.body.data);
}, function (error) {
// Get the complete error message.
console.log(error);
// Get a specific field.
console.log(error.data.Code);
})/**
The dependency is github.com/alibabacloud-go/imageenhan-20190930/v2.
We recommend using 'go mod tidy' to install the dependency.
*/
package main
import (
"fmt"
"os"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
imageenhan20190930 "github.com/alibabacloud-go/imageenhan-20190930/v2/client"
util "github.com/alibabacloud-go/tea-utils/v2/service"
"github.com/alibabacloud-go/tea/tea"
)
func main() {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
accessKeyId := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
accessKeySecret := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
// Initialize the configuration object &openapi.Config. This object stores configurations such as your AccessKey ID, AccessKey Secret, and endpoint.
config := &openapi.Config{
AccessKeyId: tea.String(accessKeyId),
AccessKeySecret: tea.String(accessKeySecret),
}
// The endpoint of the service.
config.Endpoint = tea.String("imageenhan.cn-shanghai.aliyuncs.com")
client, err := imageenhan20190930.NewClient(config)
if err != nil {
panic(err)
}
AssessExposureRequest := &imageenhan20190930.AssessExposureRequest{
ImageURL: tea.String("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg"),
}
runtime := &util.RuntimeOptions{}
assessExposureResponse, err := client.AssessExposureWithOptions(AssessExposureRequest, runtime)
if err != nil {
// Get the complete error message.
fmt.Println(err.Error())
} else {
// Get the complete response.
fmt.Println(assessExposureResponse)
}
}// Install the SDK package.
// dotnet add package AlibabaCloud.SDK.Imageenhan20190930
using System;
using System.Collections;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Net;
using System.Threading.Tasks;
using AlibabaCloud.SDK.Imageenhan20190930.Models;
using Tea;
using Tea.Utils;
namespace AlibabaCloud.SDK.Sample
{
public class Sample
{
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Imageenhan20190930.Client CreateClient(string accessKeyId, string accessKeySecret)
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config
{
AccessKeyId = accessKeyId,
AccessKeySecret = accessKeySecret,
};
// The endpoint of the service.
config.Endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new AlibabaCloud.SDK.Imageenhan20190930.Client(config);
}
public static void Main(string[] args)
{
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
AlibabaCloud.SDK.Imageenhan20190930.Client client = CreateClient(System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessExposureRequest assessExposureRequest = new AlibabaCloud.SDK.Imageenhan20190930.Models.AssessExposureRequest
{
ImageURL = "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg",
};
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
try
{
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessExposureResponse assessExposureResponse = client.AssessExposureWithOptions(assessExposureRequest, runtime);
// Get the complete response.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessExposureResponse.Body));
// Get a specific field.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessExposureResponse.Body.Data));
}
catch (TeaException error)
{
// Print the error message.
AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
}
catch (Exception _error)
{
TeaException error = new TeaException(new Dictionary<string, object>
{
{ "message", _error.Message }
});
// Print the error message.
Console.WriteLine(error.Message);
}
}
}
}Local file or public URL
/*
Install the dependency.
<!-- https://mvnrepository.com/artifact/com.aliyun/imageenhan20190930 -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>imageenhan20190930</artifactId>
<version>${aliyun.imageenhan.version}</version>
</dependency>
*/
import com.aliyun.imageenhan20190930.models.AssessExposureResponse;
import com.aliyun.tea.TeaException;
import com.aliyun.tea.TeaModel;
import java.io.InputStream;
import java.net.URL;
public class AssessExposure {
public static com.aliyun.imageenhan20190930.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
/*
Initialize the configuration object com.aliyun.teaopenapi.models.Config.
This object stores configurations such as your AccessKey ID, AccessKey Secret, and endpoint.
*/
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
.setAccessKeyId(accessKeyId)
.setAccessKeySecret(accessKeySecret);
// The endpoint of the service.
config.endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new com.aliyun.imageenhan20190930.Client(config);
}
public static void main(String[] args_) throws Exception {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
com.aliyun.imageenhan20190930.Client client = AssessExposure.createClient(accessKeyId, accessKeySecret);
// Scenario 1: Use a local file.
// InputStream inputStream = new FileInputStream(new File("/tmp/AssessExposure.jpg"));
// Scenario 2: Use a publicly accessible URL.
URL url = new URL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg");
InputStream inputStream = url.openConnection().getInputStream();
com.aliyun.imageenhan20190930.models.AssessExposureAdvanceRequest assessExposureAdvanceRequest = new com.aliyun.imageenhan20190930.models.AssessExposureAdvanceRequest()
.setImageURLObject(inputStream);
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
AssessExposureResponse assessExposureAdvanceResponse = client.assessExposureAdvance(assessExposureAdvanceRequest, runtime);
// Get the complete response.
System.out.println(com.aliyun.teautil.Common.toJSONString(TeaModel.buildMap(assessExposureAdvanceResponse)));
// Get a specific field.
System.out.println(assessExposureAdvanceResponse.getBody());
} catch (TeaException teaException) {
// Get the complete error message.
System.out.println(com.aliyun.teautil.Common.toJSONString(teaException));
// Get a specific field.
System.out.println(teaException.getCode());
}
}
}# -*- coding: utf-8 -*-
# Install the dependency.
# pip install alibabacloud_imageenhan20190930
import os
import io
from urllib.request import urlopen
from alibabacloud_imageenhan20190930.client import Client
from alibabacloud_imageenhan20190930.models import AssessExposureAdvanceRequest
from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions
config = Config(
# To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
# If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
# The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
access_key_id=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),
access_key_secret=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
# The endpoint of the service.
endpoint='imageenhan.cn-shanghai.aliyuncs.com',
# The region ID that corresponds to the endpoint.
region_id='cn-shanghai'
)
# Scenario 1: Use a local file.
#img = open(r'/tmp/AssessExposure1.jpg', 'rb')
# Scenario 2: Use a publicly accessible URL.
url = 'http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg'
img = io.BytesIO(urlopen(url).read())
assess_exposure_request = AssessExposureAdvanceRequest()
assess_exposure_request.image_urlobject = img
runtime = RuntimeOptions()
try:
# Initialize the client.
client = Client(config)
response = client.assess_exposure_advance(assess_exposure_request, runtime)
# Get the complete response.
print(response.body)
except Exception as error:
# Get the complete error message.
print(error)
# Get a specific field.
print(error.code)<?php
// Install the dependency.
//composer require alibabacloud/imageenhan-20190930
use AlibabaCloud\SDK\Imageenhan\V20190930\Imageenhan;
use \Exception;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Imageenhan\V20190930\Models\AssessExposureAdvanceRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
use GuzzleHttp\Psr7\Stream;
class AssessExposureAdvance {
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param string $accessKeyId
* @param string $accessKeySecret
* @return Imageenhan Client
*/
public static function createClient($accessKeyId, $accessKeySecret){
//Initialize the configuration object Darabonba\OpenApi\Models\Config.
//This object stores configurations such as your AccessKey ID, AccessKey Secret, and endpoint.
$config = new Config([
"accessKeyId" => $accessKeyId,
"accessKeySecret" => $accessKeySecret
]);
// The endpoint of the service.
$config->endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new Imageenhan($config);
}
/**
* @param string[] $args
* @return void
*/
public static function main($args){
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
$accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');
$accessKeySecret = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
$client = self::createClient($accessKeyId, $accessKeySecret);
// Scenario 1: Use a local file.
//$file = fopen('/tmp/AssessExposure1.jpg', 'rb');
//$stream = new Stream($file);
// Scenario 2: Use a publicly accessible URL.
$file = fopen('http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg', 'rb');
$stream = new Stream($file);
$assessExposureAdvanceRequest = new AssessExposureAdvanceRequest([
"imageURLObject" => $stream
]);
$runtime = new RuntimeOptions([]);
try {
$resp = $client->assessExposureAdvance($assessExposureAdvanceRequest, $runtime);
# Get the complete response.
echo Utils::toJSONString($resp->body);
} catch (Exception $exception) {
# Get the complete error message.
echo Utils::toJSONString($exception);
# Get a specific field.
}
}
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
// The $argv parameter is a reserved array for input arguments and does not need to be modified.
AssessExposureAdvance::main(array_slice($argv, 1));// Install the SDK package.
// npm install @alicloud/imageenhan20190930
const ImageenhanClient = require('@alicloud/imageenhan20190930');
const OpenapiClient = require('@alicloud/openapi-client');
const TeaUtil = require('@alicloud/tea-util');
const fs = require('fs');
const http = require('http');
const https = require('https');
let config = new OpenapiClient.Config({
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET
});
// The endpoint of the service.
config.endpoint = `imageenhan.cn-shanghai.aliyuncs.com`;
const client = new ImageenhanClient.default(config);
const getResponse = function (httpClient, url) {
return new Promise((resolve, reject) => {
httpClient.get(url, function (response) {
resolve(response);
})
})
}
const request = async function () {
try {
const client = new ImageenhanClient.default(config);
let assessExposureAdvanceRequest = new ImageenhanClient.AssessExposureAdvanceRequest();
// Scenario 1: Use a local file.
// const fileStream = fs.createReadStream('/tmp/AssessExposure1.jpg');
// assessExposureAdvanceRequest.imageURLObject = fileStream;
// Scenario 2: Use a publicly accessible URL.
const url = new URL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg");
const httpClient = (url.protocol == "https:") ? https : http;
assessExposureAdvanceRequest.imageURLObject = await getResponse(httpClient, url);
let runtime = new TeaUtil.RuntimeOptions({ });
client.assessExposureAdvance(assessExposureAdvanceRequest, runtime)
.then(function(assessExposureResponse) {
// Get the complete response.
console.log(assessExposureResponse);
// Get a specific field.
console.log(assessExposureResponse.body.data);
}, function(error) {
// Get the complete error message.
console.log(error);
// Get a specific field.
console.log(error.data.Code);
})
} catch (error) {
console.log(error);
}
}();/**
The dependency is github.com/alibabacloud-go/imageenhan-20190930/v2.
We recommend using 'go mod tidy' to install the dependency.
*/
package main
import (
"fmt"
"os"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
imageenhan20190930 "github.com/alibabacloud-go/imageenhan-20190930/v2/client"
util "github.com/alibabacloud-go/tea-utils/v2/service"
"github.com/alibabacloud-go/tea/tea"
"net/http"
)
func main() {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
accessKeyId := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
accessKeySecret := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
// Initialize the configuration object &openapi.Config. This object stores configurations such as your AccessKey ID, AccessKey Secret, and endpoint.
config := &openapi.Config{
AccessKeyId: tea.String(accessKeyId),
AccessKeySecret: tea.String(accessKeySecret),
}
// The endpoint of the service.
config.Endpoint = tea.String("imageenhan.cn-shanghai.aliyuncs.com")
client, err := imageenhan20190930.NewClient(config)
if err != nil {
panic(err)
}
// Scenario 1: Use a local file.
//file, err := os.Open("/tmp/AssessExposure.jpg")
//if err != nil {
// fmt.Println("can not open file", err)
// panic(err)
//}
//assessExposureAdvanceRequest := &imageenhan20190930.AssessExposureAdvanceRequest{
// ImageURLObject: file,
//}
//Scenario 2: Use a publicly accessible URL.
httpClient := http.Client{}
file, _ := httpClient.Get("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg")
assessExposureAdvanceRequest := &imageenhan20190930.AssessExposureAdvanceRequest{
ImageURLObject: file.Body,
}
runtime := &util.RuntimeOptions{}
assessExposureAdvanceResponse, err := client.AssessExposureAdvance(assessExposureAdvanceRequest, runtime)
if err != nil {
// Get the complete error message.
fmt.Println(err.Error())
} else {
// Get the complete response.
fmt.Println(assessExposureAdvanceResponse)
}
}// Install the SDK package.
// dotnet add package AlibabaCloud.SDK.Imageenhan20190930
using System;
using System.Collections;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Net;
using System.Threading.Tasks;
using AlibabaCloud.SDK.Imageenhan20190930.Models;
using Tea;
using Tea.Utils;
namespace AlibabaCloud.SDK.Sample
{
public class Sample
{
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Imageenhan20190930.Client CreateClient(string accessKeyId, string accessKeySecret)
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config
{
AccessKeyId = accessKeyId,
AccessKeySecret = accessKeySecret,
};
// The endpoint of the service.
config.Endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new AlibabaCloud.SDK.Imageenhan20190930.Client(config);
}
public static void Main(string[] args)
{
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you are using a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// The sample code reads the AccessKey ID and AccessKey Secret from environment variables. You must configure the environment variables before running the sample code.
AlibabaCloud.SDK.Imageenhan20190930.Client client = CreateClient(System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessExposureAdvanceRequest assessExposureAdvanceRequest = new AlibabaCloud.SDK.Imageenhan20190930.Models.AssessExposureAdvanceRequest
();
// Scenario 1: Use a local file.
// System.IO.StreamReader file = new System.IO.StreamReader(@"/tmp/AssessExposure1.jpg");
// assessExposureAdvanceRequest.ImageURLObject = file.BaseStream;
// Scenario 2: Use a publicly accessible URL.
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessExposure/AssessExposure1.jpg");
WebResponse response = request.GetResponse();
Stream stream = response.GetResponseStream();
assessExposureAdvanceRequest.ImageURLObject = stream;
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
try
{
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessExposureResponse assessExposureResponse = client.AssessExposureAdvance(assessExposureAdvanceRequest, runtime);
// Get the complete response.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessExposureResponse.Body));
// Get a specific field.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessExposureResponse.Body.Data));
}
catch (TeaException error)
{
// Print the error message.
AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
}
catch (Exception _error)
{
TeaException error = new TeaException(new Dictionary<string, object>
{
{ "message", _error.Message }
});
// Print the error message.
Console.WriteLine(error.Message);
}
}
}
}Is this page helpful?