gpt4 book ai didi

ruby - 如何在 s3 上使用 ruby​​ aws-sdk 创建目录结构?

转载 作者:数据小太阳 更新时间:2023-10-29 07:19:19 25 4
gpt4 key购买 nike

我正在尝试使用 ruby​​ aws-sdk gem 将整个目录上传到 s3。我首先尝试将其分解为更小的问题,因此我目前要做的只是创建一个文件夹,然后将文件放入该文件夹。我知道从技术上讲 s3 没有文件夹,但有对象。我知道你可以有一个类似目录的结构。我找不到任何关于如何在线执行此操作的信息,除了阅读 AWS::S3::Tree 之外,文档没有提及很多关于目录结构的内容

这是我目前尝试创建一个文件夹,然后将文件添加到该文件夹​​:

#created an object called test
obj = bucket.objects.create('test', 'data')

#this is the path to a css file that I am uploading.
path_to_file = './directory/mobile/player.css'

#writing file to test object
obj.write(Pathname.new(path_to_file))

这实际上是在编写要测试的 css 文件。我想要它做的是在名为 test 的文件夹中创建一个 css 文件。

我确信我误解了对象与目录的关联方式。任何人都可以发现我出错的地方或指出正确的方向吗?

最佳答案

您可以使用以下代码:

# Instantiate the S3 client with your AWS credentials
s3 = AWS::S3.new(
:access_key_id => 'Aws_Access_Key',
:secret_access_key => 'Aws_Secret_Key'
)

# If you want to create bucket
# bucketName: name of the bucket
bucket = s3.buckets.create('bucketName', :acl => :public_read)

# push file to s3
# bucketName: Amazon Bucket Name
# key: The file location that you want to create for your file.
# e.g, key = "user/appName/myapp.zip"
# File_To_Save: The location of your file.

obj = bucket.objects['key']
obj.write(:file => file_name)
puts obj.public_url

# This key describes the directory structure for your file

关于ruby - 如何在 s3 上使用 ruby​​ aws-sdk 创建目录结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16512736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com