Używam gem aws-sdk-ruby i chcę skopiować plik /images/image_a.png do /profile.png wszystkie znajdują się wewnątrz tego samego zasobnika.Kopiowanie pliku wewnątrz wiaderka S3 (ruby)
Jak mogę to zrobić?
Używam gem aws-sdk-ruby i chcę skopiować plik /images/image_a.png do /profile.png wszystkie znajdują się wewnątrz tego samego zasobnika.Kopiowanie pliku wewnątrz wiaderka S3 (ruby)
Jak mogę to zrobić?
Wyodrębniony z documentation, należy użyć copy_to
. Na przykład:
s3 = AWS::S3.new
# Upload a file and set server-side encryption.
bucket1 = s3.buckets[source_bucket]
bucket2 = s3.buckets[target_bucket]
obj1 = bucket1.objects[source_key]
obj2 = bucket2.objects[target_key]
obj1.copy_to(obj2)
to zrobić z AWS-sdk-V2 można wykonać następujące czynności:
bucket = Aws::S3::Bucket.new('my_aws_bucket')
new_object = bucket.object("new_photo_uploads/logos/my_new_copied_photo.png")
aws_response = new_object.copy_from(bucket.object("my_original_photo.png"))
Jeśli cel jest w tym samym wiadrze, można po prostu zrobić: s3.buckets [” bucket-name ']. objects [' source ']. copy_to (' cel ') –