[英]R: write s3 object metadata
我在Amazon Web Services 上將 R軟件包aws.s3與S3存儲桶一起使用。 有沒有一種方法可以從R中為存儲桶對象寫入元數據?
下面的代碼用於從S3讀取元數據。
library(aws.s3)
head_object("my_object", bucket = "my_bucket")
[1] TRUE
attr(,"x-amz-id-2")
[1] "abc"
attr(,"x-amz-request-id")
[1] "abc"
attr(,"date")
[1] "Sat, 08 Dec 2018 00:01:34 GMT"
attr(,"last-modified")
[1] "Fri, 07 Dec 2018 20:45:47 GMT"
attr(,"etag")
[1] "\"abc\""
attr(,"x-amz-meta-source-info")
[1] "how can I write this from R?" <---- created meta data in AWS console
attr(,"accept-ranges")
[1] "bytes"
attr(,"content-type")
[1] "application/zip"
attr(,"content-length")
[1] "100"
attr(,"server")
[1] "AmazonS3"
put_object()
和save_object()
都有一個稱為headers
的參數。 這就是s3_object
的元數據所在的s3_object
。 AWS建議自定義元數據標簽需要以x-amz-meta-
作為前綴,並且需要具有匹配的值。
創建鍵和值的列表然后進行匹配可能是最簡單的方法:
keys <- list("key1", "key2")
values <- list("unlock", "does-not-unlock")
keys <- lapply(function(x) paste0("x-amz-meta-", x))
metadata <- setNames(values, keys)
put_object(file, object, bucket, headers = metadata)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.