媒體庫不提供全域的標籤管理和設定,每個媒體的標籤都是獨立的。本文為您介紹如何為媒體檔案添加和刪除標籤。
功能使用
ApsaraVideo for Media Processing支援通過SDK或API管理標籤。SDK安裝請參見Java SDK、Python SDK、PHP SDK,範例程式碼見下文。如需通過API使用功能,請參見直接調用API管理標籤。
說明
本文以PHP語言為例。
SDK調用API管理標籤
添加標籤
標籤的API支援單個標籤的添加和刪除,如果要一次設定多個標籤,可以通過更新媒體-基本資料實現。添加標籤的詳細參數說明請參見更新媒體-添加標籤,範例程式碼如下:
<?php namespace AlibabaCloud\SDK\Sample; use AlibabaCloud\SDK\Mts\V20140618\Mts; use AlibabaCloud\Darabonba\Env\Env; use AlibabaCloud\Tea\Tea; use AlibabaCloud\Tea\Utils\Utils; use AlibabaCloud\Tea\Console\Console; use Darabonba\OpenApi\Models\Config; use AlibabaCloud\SDK\Mts\V20140618\Models\AddMediaTagRequest; class Sample { /** * @param string $accessKeyId * @param string $accessKeySecret * @param string $regionId * @return Mts * 正式環境下 建議 protocol = "HTTPS"; */ public static function createClient($accessKeyId, $accessKeySecret, $regionId){ $config = new Config([]); $config->accessKeyId = $accessKeyId; $config->accessKeySecret = $accessKeySecret; $config->regionId = $regionId; $config->protocol = "HTTP"; return new Mts($config); } /** * @return void */ public static function main(){ $client = self::createClient(Env::getEnv("ALIBABA_CLOUD_ACCESS_KEY_ID"), Env::getEnv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), 'cn-shanghai'); $request = new AddMediaTagRequest([ "mediaId" => "3e6149d5ad2dc3e4******", "tag" => "tag1" ]); $response = $client->addMediaTag($request); Console::log(Utils::toJSONString(Tea::merge($response->body))); } } $path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php'; if (file_exists($path)) { require_once $path; } Sample::main();刪除標籤
<?php namespace AlibabaCloud\SDK\Sample; use AlibabaCloud\SDK\Mts\V20140618\Mts; use AlibabaCloud\Darabonba\Env\Env; use AlibabaCloud\Tea\Tea; use AlibabaCloud\Tea\Utils\Utils; use AlibabaCloud\Tea\Console\Console; use Darabonba\OpenApi\Models\Config; use AlibabaCloud\SDK\Mts\V20140618\Models\DeleteMediaTagRequest; class Sample { /** * @param string $accessKeyId * @param string $accessKeySecret * @param string $regionId * @return Mts * 正式環境下 建議 protocol = "HTTPS"; */ public static function createClient($accessKeyId, $accessKeySecret, $regionId){ $config = new Config([]); $config->accessKeyId = $accessKeyId; $config->accessKeySecret = $accessKeySecret; $config->regionId = $regionId; $config->protocol = "HTTP"; return new Mts($config); } /** * @return void */ public static function main(){ $client = self::createClient(Env::getEnv("ALIBABA_CLOUD_ACCESS_KEY_ID"), Env::getEnv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), 'cn-shanghai'); $request = new DeleteMediaTagRequest([ "mediaId" => "3e6149d5ad2dc3e4******", "tag" => "tag1" ]); $response = $client->deleteMediaTag($request); Console::log(Utils::toJSONString(Tea::merge($response->body))); } } $path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php'; if (file_exists($path)) { require_once $path; } Sample::main();
直接調用API管理標籤
說明
直接調用API是指直接在OpenAPI門戶調用該介面對標籤進行管理。