[英]Uploading files to google cloud storage bucket using googleCloudStorageR's gcs_upload for uniform bucket-level access
可能是使用或设置问题:
我正在尝试使用R
的googleCloudStorageR
package 将文件上传到我的谷歌存储桶。
跑步:
googleCloudStorageR::gcs_upload("test/my_test.csv")
打印这些消息:
2020-05-11 18:57:19 -- File size detected as 368 bytes
2020-05-11 18:57:20> Request Status Code: 400
然后这个错误:
Error: API returned: Cannot insert legacy ACL for an object when uniform bucket-level access is enabled. Read more at https://cloud.google.com/storage/docs/uniform-bucket-level-access.
googleCloudStorageR::gcs_upload
是否有不同的用法会成功? (从其文档中不清楚
如果我将predefinedAcl
设置为"default"
,我会收到与JSON
相关的错误:
Error : lexical error: invalid char in json text
此错误消息后跟一些html
代码,然后是此消息:
> xdg-open: unexpected argument 'minimum-scale=1,'
Try 'xdg-open --help' for more information.`.
我不确定它指的是什么JSON
但如果它是JSON
我设置googleCloudStorageR
来验证对我的存储桶的访问权限比我惊讶的是它在这个阶段抱怨
看起来在https://github.com/cloudyr/googleCloudStorageR/pull/84中,如果您将predefinedAcl
设置为default
,它就支持继承存储桶级别的 ACL。 在您的示例中,这将是:
googleCloudStorageR::gcs_upload("test/my_test.csv", predefinedAcl = "default")
googleCloudStorageR开发人员已解决此问题。 它尚未在CRAN
发行版上,但它应该从github
( devtools::install_github("cloudyr/googleCloudStorageR")
) 安装它。
用法是:
googleCloudStorageR::gcs_upload("test/my_test.csv", predefinedAcl = "bucketLevel")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.