برچسبگذاری روی یک صندوقچه
با استفاده از این قابلیت شما میتوانید روی صندوقچهها برچسبگذاری کنید. برچسبها این امکان را به شما میدهند تا روی صندوقچههایی با برچسب مشترک عملیات گروهی انجام دهید.
مولفهها
- کلیدهای احراز هویت
- نام صندوقچه
- برچسب
برچسب
هر برچسب از دو مولفهی کلید و مقدار تشکیل شده است که بهشکل زیر مورد استفاده قرار میگیرد:
- NET.
- PHP
- Python
- Javascript
- GO
{
tagList.Add(new Tag() { Key = "Key1", Value = "Value1" }); //REQUIRED
tagList.Add(new Tag() { Key = "Key2", Value = "Value2" }); //REQUIRED
}
توجه کنید با استفاده از این تابع، برچسبهای جدید جایگزین برچسبهای قبلی خواهند شد. اگر میخواهید برچسبهای جدید را به برچسبهای قدیمی اضافه کنید، ابتدا باید برچسبهای قدیمی را با استفاده از تابع GetBucketTaggingAsync دریافت کنید و سپس مجموعهی برچسبهای جدید و قدیمی را به عنوان ورودی به این تابع پاس دهید.
محدودیتها
- بیشینهی تعداد برچسبها برای یک صندوقچه ۱۰ میباشد.
- مقدار کلید (Key) برای برچسبهای یک صندوقچه باید یکتا باشد.
- مقدار Key و Value برای هر صندوقچه باید بهشکل رشته باشد.
- طول مقدار کلید Key میتواند تا ۱۲۸ کاراکتر Unicode باشد و همچنین طول مقدار کلید Value میتواند تا ۲۵۶ کاراکتر Unicode باشد.
- مقادیر دو کلید Key و Value حساس به حروف کوچک و بزرگ هستند.
نمونه کد برچسب گذاری روی یک صندوقچه
using Amazon;
using Amazon.S3;
using Amazon.S3.Model;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using System.Reflection;
using System.Collections;
namespace PutBucketTags
{
class PutBucketTags
{
private const string bucketName = "<BUCKET_NAME>";
private static IAmazonS3 _s3Client;
public static void Main()
{
var awsCredentials = new Amazon.Runtime.BasicAWSCredentials("<ACCESS-KEY>", "<SECRET-KEY>");
var config = new AmazonS3Config { ServiceURL = "<ENDPOINT>" };
_s3Client = new AmazonS3Client(awsCredentials, config);
PutBucketTagsAsync().Wait();
}
private static async Task PutBucketTagsAsync()
{
try
{
List<Tag> tagList = new List<Tag>();
// Add parts to the list.
tagList.Add(new Tag() { Key = "Key1", Value = "Value1" });
tagList.Add(new Tag() { Key = "Key2", Value = "Value2" });
PutBucketTaggingResponse response = await _s3Client.PutBucketTaggingAsync(bucketName, tagList);
foreach (PropertyInfo prop in response.GetType().GetProperties())
{
Console.WriteLine($"{prop.Name}: {prop.GetValue(response, null)}");
}
Console.WriteLine($"Tags added to {bucketName} bucket");
}
catch (AmazonS3Exception amazonS3Exception)
{
Console.WriteLine("An AmazonS3Exception was thrown. Exception: " + amazonS3Exception.ToString());
}
catch (Exception e)
{
Console.WriteLine("Exception: " + e.ToString());
}
}
}
}
{
'Key' => '<string>', // REQUIRED
'Value' => '<string>', // REQUIRED
}
توجه کنید با استفاده از این تابع، برچسبهای جدید جایگزین برچسبهای قبلی خواهند شد. اگر میخواهید برچسبهای جدید را به برچسبهای قدیمی اضافه کنید، ابتدا باید برچسبهای قدیمی را با استفاده از تابع get_bucket_tagging دریافت کنید و سپس مجموعهی برچسبهای جدید و قدیمی را به عنوان ورودی به این تابع پاس دهید.
محدودیتها
- بیشینهی تعداد برچسبها برای یک صندوقچه ۱۰ میباشد.
- مقدار کلید (Key) برای برچسبهای یک صندوقچه باید یکتا باشد.
- مقدار Key و Value برای هر صندوقچه باید بهشکل رشته باشد.
- طول مقدار کلید Key میتواند تا ۱۲۸ کاراکتر Unicode باشد و همچنین طول مقدار کلید Value میتواند تا ۲۵۶ کاراکتر Unicode باشد.
- مقادیر دو کلید Key و Value حساس به حروف کوچک و بزرگ هستند.
نمونه کد برچسب گذاری روی یک صندوقچه
<?php
require('client.php');
$bucket = $config['sample_bucket'];
try {
$result = $client->putBucketTagging([
'Bucket' => $bucket, // REQUIRED
'Tagging' => [ // REQUIRED
'TagSet' => [ // REQUIRED
[
'Key' => '<string>', // REQUIRED
'Value' => '<string>', // REQUIRED
],
// ...
],
],
]);
var_dump($result);
} catch (AwsException $e) {
// Display error message
echo $e->getMessage();
echo "\n";
}
{
"Key": "str", # REQUIRED
"Value": "str" # REQUIRED
}
توجه کنید با استفاده از این تابع، برچسبهای جدید جایگزین برچسبهای قبلی خواهند شد. اگر میخواهید برچسبهای جدید را به برچسبهای قدیمی اضافه کنید، ابتدا باید برچسبهای قدیمی را با استفاده از تابع get_bucket_tagging دریافت کنید و سپس مجموعهی برچسبهای جدید و قدیمی را به عنوان ورودی به این تابع پاس دهید.
محدودیتها
- بیشینهی تعداد برچسبها برای یک صندوقچه ۱۰ میباشد.
- مقدار کلید (Key) برای برچسبهای یک صندوقچه باید یکتا باشد.
- مقدار Key و Value برای هر صندوقچه باید بهشکل رشته باشد.
- طول مقدار کلید Key میتواند تا ۱۲۸ کاراکتر Unicode باشد و همچنین طول مقدار کلید Value میتواند تا ۲۵۶ کاراکتر Unicode باشد.
- مقادیر دو کلید Key و Value حساس به حروف کوچک و بزرگ هستند.
نمونه کد برچسب گذاری روی یک صندوقچه
import boto3
import logging
from botocore.exceptions import ClientError
# Configure logging
logging.basicConfig(level=logging.INFO)
try:
# S3 client
s3_client = boto3.client(
's3',
endpoint_url='endpoint_url',
aws_access_key_id='access_key',
aws_secret_access_key='secret_key'
)
except Exception as exc:
logging.error(exc)
else:
try:
bucket_name = 'bucket_name'
response = s3_client.put_bucket_tagging(
Bucket = bucket_name,
Tagging = {
'TagSet': [
{
'Key': 'string',
'Value': 'string'
},
]
},
)
logging.info(response)
except ClientError as e:
logging.error(e)
{
Key: "string", # REQUIRED
Value: "string" # REQUIRED
}
توجه کنید با استفاده از این تابع، برچسبهای جدید جایگزین برچسبهای قبلی خواهند شد. اگر میخواهید برچسبهای جدید را به برچسبهای قدیمی اضافه کنید، ابتدا باید برچسبهای قدیمی را با استفاده از تابع get_bucket_tagging دریافت کنید و سپس مجموعهی برچسبهای جدید و قدیمی را به عنوان ورودی به این تابع پاس دهید.
محدودیتها
- بیشینهی تعداد برچسبها برای یک صندوقچه ۱۰ میباشد.
- مقدار کلید (Key) برای برچسبهای یک صندوقچه باید یکتا باشد.
- مقدار Key و Value برای هر صندوقچه باید بهشکل رشته باشد.
- طول مقدار کلید Key میتواند تا ۱۲۸ کاراکتر Unicode باشد و همچنین طول مقدار کلید Value میتواند تا ۲۵۶ کاراکتر Unicode باشد.
- مقادیر دو کلید Key و Value حساس به حروف کوچک و بزرگ هستند.
نمونه کد برچسب گذاری روی یک صندوقچه
// Import required AWS SDK clients and commands for Node.js
const { S3Client, PutBucketTaggingCommand } = require('@aws-sdk/client-s3');
// Create an S3 client service object
const s3 = new S3Client({
region: 'default',
endpoint: 'endpoint_url',
credentials: {
accessKeyId: 'access_key',
secretAccessKey: 'secret_key',
},
});
const run = async () => {
try {
const response = await s3.send(
new PutBucketTaggingCommand({
Bucket: 'sample_bucket',
Tagging: {
TagSet: [
{
Key: 'Key1',
Value: 'Value1',
},
{
Key: 'Key2',
Value: 'Value2',
},
],
},
})
);
console.log('Success', response.CORSRules);
} catch (err) {
console.log('Error', err);
}
};
run();
{
"Key": "str", # REQUIRED
"Value": "str" # REQUIRED
}
توجه کنید با استفاده از این تابع، برچسبهای جدید جایگزین برچسبهای قبلی خواهند شد. اگر میخواهید برچسبهای جدید را به برچسبهای قدیمی اضافه کنید، ابتدا باید برچسبهای قدیمی را با استفاده از تابع GetBucketTagging دریافت کنید و سپس مجموعهی برچسبهای جدید و قدیمی را به عنوان ورودی به این تابع پاس دهید.
محدودیتها
- بیشینهی تعداد برچسبها برای یک صندوقچه ۱۰ میباشد.
- مقدار کلید (Key) برای برچسبهای یک صندوقچه باید یکتا باشد.
- مقدار Key و Value برای هر صندوقچه باید بهشکل رشته باشد.
- طول مقدار کلید Key میتواند تا ۱۲۸ کاراکتر Unicode باشد و همچنین طول مقدار کلید Value میتواند تا ۲۵۶ کاراکتر Unicode باشد.
- مقادیر دو کلید Key و Value حساس به حروف کوچک و بزرگ هستند.
نمونه کد برچسب گذاری روی یک صندوقچه
package main
// snippet-start:[s3.go.set_cors.imports]
import (
"fmt"
"os"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awserr"
"github.com/aws/aws-sdk-go/aws/credentials"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/s3"
)
// Lists Bucket Tags
//
// Usage:
// go run s3_put_bucket_tags.go BUCKET_NAME
func main() {
if len(os.Args) != 2 {
exitErrorf("Bucket name required\nUsage: go run", os.Args[0], "BUCKET")
}
bucket := os.Args[1]
sess, err := session.NewSession(&aws.Config{
Credentials: credentials.NewStaticCredentials("<ACCESS_KEY>", "<SECRET_KEY>", ""),
})
svc := s3.New(sess, &aws.Config{
Region: aws.String("default"),
Endpoint: aws.String("<ENDPOINT_URL>"),
})
input := &s3.PutBucketTaggingInput{
Bucket: aws.String(bucket),
Tagging: &s3.Tagging{
TagSet: []*s3.Tag{
{
Key: aws.String("Key1"),
Value: aws.String("Value1"),
},
{
Key: aws.String("Key2"),
Value: aws.String("Value2"),
},
},
},
}
result, err := svc.PutBucketTagging(input)
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
return
}
fmt.Println(result)
fmt.Println("Tags successfully added to", bucket, "bucket")
}
// snippet-start:[s3.go.set_cors.exit]
func exitErrorf(msg string, args ...interface{}) {
fmt.Fprintf(os.Stderr, msg+"\n", args...)
os.Exit(1)
}