重现错误(看起来像一个错误)
我可以重现错误,但我无法解释:
s3read_using(FUN = readRDS, object = "pfd.RDS", bucket = "collidr-api")
# Error in parse_aws_s3_response(r, Sig, verbose = verbose) :
# Moved Permanently (HTTP 301)
s3read_using(FUN = readRDS, object = "pfd.RDS", bucket = "collidr-api", region = "ap-southeast-2")
# Error in parse_aws_s3_response(r, Sig, verbose = verbose) :
# Moved Permanently (HTTP 301)
另一种选择
另一种读取数据的方法是这样(运行下面的代码,它应该可以工作 - 您只需用自己的值替换存储桶/文件/区域,并使用 read.csv() 而不是 @987654323 @。
bucket <- "collidr-api"
file <- "pfd.RDS"
region <- "ap-southeast-2"
s3location <- paste0("https://", bucket, ".s3-", region, ".amazonaws.com/", file)
readRDS(url(s3location))
# package_names function_names
# 1 A3 a
# 2 A3 a3
# 3 A3 A3-package
# 4 A3 a3.base
# 5 A3 a3.gen.default
# Data reads in successfully!
请注意
我注意到当我尝试读取我无权读取的文件时,我收到了相同的错误消息。所以这是另一种可能。一种非常快速的测试方法是查看您是否可以使用文件的 url 直接在浏览器中访问文件(即,将上面的 s3location 变量复制/粘贴到浏览器的地址栏中 - 如果它下载文件,则没有理由R 应该能够做到这一点,但如果它说访问被拒绝,那么 R 将无法在没有存储桶凭据的情况下读取该文件。