本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
管理註釋
您可以使用 、 或 AWS SDKs 在 Amazon S3 物件上新增 AWS Management Console AWS CLI、擷取和刪除註釋。下列各節說明如何執行每項操作。
新增或更新註釋
您可以將新的註釋新增至物件,或取代其承載來更新現有的註釋。
使用 S3 主控台
將註釋新增至物件
-
登入 AWS Management Console ,並在 https://console.aws.amazon.com/s3/
:// 開啟 Amazon S3 主控台。 -
在儲存貯體清單中,選擇包含該物件的儲存貯體名稱。
-
在物件清單中,選擇您要註釋的物件名稱。
-
選擇屬性索引標籤。
-
捲動至註釋區段,然後選擇新增註釋。
-
針對名稱,輸入註釋的名稱 (例如
ml.sentiment)。名稱必須為 1–512 個位元組,且可包含 Unicode 字母、數字、底線、句點和連字號。名稱開頭不得為aws或s3。 -
選擇選擇檔案以上傳註釋內容。檔案必須是 UTF-8 可編碼且大小上限為 1 MB。
若要完成註釋
-
(選用) 在檢查總和下,選擇檢查總和演算法。
-
選擇新增註釋。
注意
若要在建立註釋之後檢視註釋的內容,您必須下載註釋。S3 主控台不會內嵌顯示註釋內容。
使用 AWS CLI
若要在物件上新增或更新註釋,請使用 put-object-annotation命令。--annotation-payload 參數接受檔案路徑。
aws s3api put-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment" \ --annotation-payload /tmp/sentiment.json
只有在上次讀取物件後仍未覆寫時,才要寫入註釋,請使用物件目前的 ETag 指定 --object-if-match 參數。
aws s3api put-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment" \ --annotation-payload /tmp/sentiment.json \ --object-if-match "\"d6eb32081c822ed572b70567826d9d9d\""
使用 AWS SDKs
下列範例使用 AWS SDK for Python (Boto3) 將註釋新增至物件。
import boto3 import json s3 = boto3.client('s3') s3.put_object_annotation( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf', AnnotationName='ml.sentiment', AnnotationPayload=json.dumps({ 'score': 0.95, 'label': 'positive', 'model': 'sentiment-v3' }).encode('utf-8') )
擷取註釋
您可以擷取特定註釋或列出物件上的所有註釋。
使用 S3 主控台
擷取註釋
-
登入 AWS Management Console ,並在 https://https://console.aws.amazon.com/s3/
開啟 Amazon S3 主控台。 -
在 Buckets (儲存貯體) 清單中,選擇包含該物件的儲存貯體名稱。
-
在 Objects (物件) 清單中,選擇物件的名稱。
-
選擇屬性索引標籤並捲動至註釋區段。
-
若要檢視註釋內容,請選擇註釋名稱旁的下載。
使用 AWS CLI
若要擷取特定註釋,請使用 get-object-annotation命令。
aws s3api get-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment" \ output.json
若要列出物件上的所有註釋,請使用 list-object-annotations命令。
aws s3api list-object-annotations \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf
使用 AWS SDKs
下列範例使用適用於 Python (Boto3) 的 AWS SDK 來擷取和列出註釋。
import boto3 import json s3 = boto3.client('s3') # Retrieve a specific annotation response = s3.get_object_annotation( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf', AnnotationName='ml.sentiment' ) content = json.loads(response['AnnotationPayload'].read()) # List all annotations on an object response = s3.list_object_annotations( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf' ) for annotation in response['Annotations']: print(f"{annotation['AnnotationName']} - {annotation['Size']} bytes")
刪除註釋
您可以從 物件刪除特定註釋。註釋刪除是永久的,無法復原。
使用 S3 主控台
刪除註釋
-
登入 AWS Management Console ,並在 https://console.aws.amazon.com/s3/
:// 開啟 Amazon S3 主控台。 -
在 Buckets (儲存貯體) 清單中,選擇包含該物件的儲存貯體名稱。
-
在 Objects (物件) 清單中,選擇物件的名稱。
-
選擇屬性索引標籤並捲動至註釋區段。
-
選取您要刪除的註釋。
-
選擇刪除,然後確認刪除。
使用 AWS CLI
若要刪除特定註釋,請使用 delete-object-annotation命令。
aws s3api delete-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment"
使用 AWS SDKs
下列範例使用適用於 Python (Boto3) 的 AWS SDK 來刪除註釋。
import boto3 s3 = boto3.client('s3') s3.delete_object_annotation( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf', AnnotationName='ml.sentiment' )