دریافت برچسبهای یک آبجکت
مولفهها
- کلیدهای احراز هویت
- نام صندوقچه
- نام آبجکت
- NET.
- PHP
- Python
- Javascript
- GO
using Amazon;
using Amazon.S3;
using Amazon.S3.Model;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using System.Reflection;
using Newtonsoft.Json;
namespace GetObjectTags
{
  class GetObjectTags
  {
      private const string bucketName = "<BUCKET_NAME>";
      private const string objectName = "<OBJECT_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);
          GetObjectTagsAsync().Wait();
      }
      private static async Task GetObjectTagsAsync()
      {
          try
          {
              GetObjectTaggingResponse response = await _s3Client.GetObjectTaggingAsync(new GetObjectTaggingRequest
              {
                  BucketName = bucketName,
                  Key = objectName
              });
              Console.WriteLine(JsonConvert.SerializeObject(response, Formatting.Indented));
          }
          catch (AmazonS3Exception amazonS3Exception)
          {
              Console.WriteLine("An AmazonS3Exception was thrown. Exception: " + amazonS3Exception.ToString());
          }
          catch (Exception e)
          {
              Console.WriteLine("Exception: " + e.ToString());
          }
      }
  }
}
<?php
require('client.php');
$bucket = '<BUCKET_NAME>';
$params = [
  'Bucket' => $bucket, // REQUIRED
  'ExpectedBucketOwner' => '<string>',
  'Key' => '<OBJECT_NAME>', // REQUIRED
  'RequestPayer' => 'requester',
  'VersionId' => '<string>',
];
try {
  $resp = $client->getObjectTagging($params);
  var_dump($resp);
} catch (AwsException $e) {
  // Display error message
  echo $e->getMessage();
  echo "\n";
}
import boto3
import logging
from botocore.exceptions import ClientError
logging.basicConfig(level=logging.INFO)
try:
  s3_client = boto3.client(
      's3',
      endpoint_url='<ENDPOINT>',
      aws_access_key_id='<ACCESS-KEY>',
      aws_secret_access_key='<SECRET-KEY>'
  )
except Exception as exc:
  logging.error(exc)
else:
  try:
      response = s3_client.get_object_tagging(
          Bucket='<BUCKET_NAME>',
          Key='<OBJECT_NAME>',
          VersionId='string',
          ExpectedBucketOwner='string',
          RequestPayer='requester'
      )
      logging.info(response)
  except ClientError as exc:
      logging.error(exc)
// Import required AWS SDK clients and commands for Node.js
const { S3Client, GetObjectTaggingCommand } = 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 BUCKET_NAME = "<BUCKET_NAME>";
const run = async () => {
try {
  const response = await s3.send(
    new GetObjectTaggingCommand({
      Bucket: BUCKET_NAME,
      Key: "<OBJECT_NAME>",
    })
  );
  console.log("Success", response);
} catch (err) {
  console.log("Error", err);
}
};
run();
package main
import (
  "github.com/aws/aws-sdk-go/aws"
  "github.com/aws/aws-sdk-go/aws/credentials"
  "github.com/aws/aws-sdk-go/aws/session"
  "github.com/aws/aws-sdk-go/service/s3"
  "fmt"
  "os"
)
// Gets object tagging
//
// Usage:
//     go run s3_get_object_tagging.go BUCKET OBJECT
func main() {
  if len(os.Args) != 3 {
      exitErrorf("Bucket and object names required\nUsage: go run", os.Args[0], "BUCKET OBJECT")
  }
  bucket := os.Args[1]
  key := os.Args[2]
  // Initialize a session in us-west-2 that the SDK will use to load
  // credentials from the shared credentials file ~/.aws/credentials.
  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>"),
  })
  // Get object tagging
  result, err := svc.GetObjectTagging(&s3.GetObjectTaggingInput{Bucket: &bucket, Key: &key})
  if err != nil {
      exitErrorf(err.Error())
  }
  fmt.Println(result)
}
func exitErrorf(msg string, args ...interface{}) {
  fmt.Fprintf(os.Stderr, msg+"\n", args...)
  os.Exit(1)
}
برای اجرای قطعه کد بالا با فرض نامگذاری فایل کد به s3_get_object_tagging.go میتوان از دستور زیر استفاده کرد:
go run s3_get_object_tagging.go BUCKET OBJECT