คำถามติดแท็ก amazon-s3

Amazon S3 (บริการจัดเก็บข้อมูลอย่างง่าย) เป็นบริการจัดเก็บวัตถุออนไลน์จาก Amazon Web Services คำถามจะต้องเกี่ยวกับการเขียนโปรแกรม คำถามเกี่ยวกับการสนับสนุน S3 ทั่วไป, ฟังก์ชั่น, การตั้งค่าและอื่น ๆ คือ OFF-TOPIC

4
การอัปโหลดรูปภาพที่เข้ารหัส base64 ไปยัง Amazon S3 ผ่าน Node.js
เมื่อวานนี้ฉันทำเซสชันการเข้ารหัสในเวลากลางคืนและสร้าง node.js / JS ขนาดเล็ก (จริงๆแล้ว CoffeeScript แต่ CoffeeScript เป็นเพียง JavaScript ดังนั้นสมมติว่า JS) เป้าหมายคืออะไร: ไคลเอนต์ส่ง canvas datauri (png) ไปยังเซิร์ฟเวอร์ (ผ่าน socket.io) เซิร์ฟเวอร์อัปโหลดภาพไปยัง amazon s3 ขั้นตอนที่ 1 เสร็จสิ้น ตอนนี้เซิร์ฟเวอร์มีสตริง a la data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACt... คำถามของฉันคือขั้นตอนต่อไปในการ "สตรีม" / อัปโหลดข้อมูลนี้ไปยัง Amazon S3 และสร้างภาพจริงที่นั่นคืออะไร knox https://github.com/LearnBoost/knoxดูเหมือนว่า lib ที่ยอดเยี่ยมในการใส่บางสิ่งลงใน S3 แต่สิ่งที่ฉันขาดหายไปคือกาวระหว่าง base64-encoded-image-string และการอัปโหลดจริงหรือไม่ ยินดีรับความคิดเห็นคำแนะนำและข้อเสนอแนะ

7
วิธีเขียนไฟล์หรือข้อมูลไปยังวัตถุ S3 โดยใช้ boto3
ใน boto 2 คุณสามารถเขียนไปยังวัตถุ S3 โดยใช้วิธีการเหล่านี้: Key.set_contents_from_string () Key.set_contents_from_file () Key.set_contents_from_filename () Key.set_contents_from_stream () มี boto 3 เทียบเท่าหรือไม่? วิธี boto3 ในการบันทึกข้อมูลไปยังวัตถุที่จัดเก็บบน S3 คืออะไร?

13
วิธีอัปโหลดไฟล์ไปยังไดเร็กทอรีใน S3 bucket โดยใช้ boto
ฉันต้องการคัดลอกไฟล์ในถัง s3 โดยใช้ python เช่นฉันมีชื่อที่เก็บข้อมูล = ทดสอบ และในที่เก็บข้อมูลฉันมี 2 โฟลเดอร์ชื่อ "dump" & "input" ตอนนี้ฉันต้องการคัดลอกไฟล์จาก local directory ไปยังโฟลเดอร์ S3 "dump" โดยใช้ python ... มีใครช่วยฉันได้บ้าง

9
คุณตั้งค่าออบเจ็กต์เริ่มต้นสำหรับไดเร็กทอรีย่อยสำหรับเว็บไซต์ที่โฮสต์แบบคงที่บน Cloudfront ได้อย่างไร
คุณตั้งค่าออบเจ็กต์เริ่มต้นสำหรับไดเรกทอรีย่อยบนเว็บไซต์ที่โฮสต์แบบคงที่บน Cloudfront ได้อย่างไร โดยเฉพาะฉันต้องการที่จะให้บริการเมื่อใดก็ตามที่ผู้ใช้จะขอwww.example.com/subdir/index.html www.example.com/subdirหมายเหตุนี่มีไว้สำหรับการส่งมอบเว็บไซต์แบบคงที่ที่เก็บไว้ในที่เก็บข้อมูล S3 นอกจากนี้ฉันต้องการใช้ข้อมูลประจำตัวการเข้าถึงต้นทางเพื่อ จำกัด การเข้าถึงที่เก็บข้อมูล S3 เฉพาะ Cloudfront เท่านั้น ตอนนี้ฉันทราบแล้วว่า Cloudfront ทำงานแตกต่างจากรัฐ S3 และ Amazon โดยเฉพาะ : ลักษณะการทำงานของอ็อบเจ็กต์รูทเริ่มต้นของ CloudFront แตกต่างจากลักษณะการทำงานของเอกสารดัชนี Amazon S3 เมื่อคุณกำหนดค่าที่เก็บข้อมูล Amazon S3 เป็นเว็บไซต์และระบุเอกสารดัชนี Amazon S3 จะส่งคืนเอกสารดัชนีแม้ว่าผู้ใช้จะร้องขอไดเร็กทอรีย่อยในที่เก็บข้อมูล (สำเนาของเอกสารดัชนีต้องปรากฏในทุกไดเรกทอรีย่อย) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าบัคเก็ต Amazon S3 เป็นเว็บไซต์และเกี่ยวกับเอกสารดัชนีโปรดดูบทที่ Hosting Websites บน Amazon S3 ในคู่มือสำหรับนักพัฒนา Amazon Simple Storage Service เป็นเช่นนี้แม้ว่า CloudFront …

8
Amazon S3 เปลี่ยนชื่อดาวน์โหลดไฟล์
ฉันมีไฟล์ที่เก็บไว้ใน S3 โดยมี GUID เป็นชื่อคีย์ ฉันใช้ URL ที่ลงนามล่วงหน้าเพื่อดาวน์โหลดตามS3 REST API ฉันเก็บชื่อไฟล์ต้นฉบับไว้ในฐานข้อมูลของฉันเอง เมื่อผู้ใช้คลิกเพื่อดาวน์โหลดไฟล์จากเว็บแอปพลิเคชันของฉันฉันต้องการที่จะกลับมาชื่อไฟล์ที่เดิม แต่ขณะนี้สิ่งที่พวกเขาได้รับคือ GUID ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร? แอปพลิเคชันเว็บของฉันอยู่ใน Salesforce ดังนั้นฉันจึงไม่สามารถควบคุมการตอบสนองได้มากนักเปลี่ยนเส้นทางทั้งหมดดาวน์โหลดไฟล์ไปยังเว็บเซิร์ฟเวอร์จากนั้นเปลี่ยนชื่อเนื่องจากข้อ จำกัด ของ Governor มีการเปลี่ยนเส้นทาง HTML, การรีเฟรชเมตา, Javascript ที่ฉันสามารถใช้ได้หรือไม่? มีวิธีใดบ้างในการเปลี่ยนชื่อไฟล์ดาวน์โหลดสำหรับ S3 (สิ่งเดียวที่ฉันคิดได้คือจัดการกับวัตถุเป็นชื่อใหม่ดาวน์โหลดแล้วลบออก) ฉันต้องการหลีกเลี่ยงการสร้างที่เก็บข้อมูลต่อผู้ใช้เนื่องจากเราจะมีผู้ใช้จำนวนมากและยังไม่รับประกันว่าแต่ละไฟล์ในที่เก็บข้อมูลแต่ละไฟล์จะมีชื่อที่ไม่ซ้ำกัน วิธีแก้ปัญหาอื่น ๆ ?

6
ผนวกข้อมูลเข้ากับอ็อบเจ็กต์ S3
สมมติว่าฉันมีเครื่องที่ฉันต้องการเขียนลงในไฟล์บันทึกบางอย่างที่เก็บไว้ในที่เก็บข้อมูล S3 ดังนั้นเครื่องจำเป็นต้องมีความสามารถในการเขียนลงในที่เก็บข้อมูลนั้น แต่ฉันไม่ต้องการให้เครื่องมีความสามารถในการเขียนทับหรือลบไฟล์ใด ๆ ในที่เก็บข้อมูลนั้น (รวมถึงไฟล์ที่ฉันต้องการให้เขียนด้วย) โดยพื้นฐานแล้วฉันต้องการให้เครื่องของฉันสามารถต่อท้ายข้อมูลลงในไฟล์บันทึกนั้นได้โดยไม่ต้องลบล้างหรือดาวน์โหลด มีวิธีกำหนดค่า S3 ของฉันให้ทำงานแบบนั้นหรือไม่? อาจมีนโยบาย IAM บางอย่างที่ฉันสามารถแนบได้เพื่อให้ทำงานได้อย่างที่ต้องการ

9
วิธีนำเข้าไฟล์ข้อความบน AWS S3 เข้าสู่แพนด้าโดยไม่ต้องเขียนลงดิสก์
ฉันมีไฟล์ข้อความที่บันทึกไว้ใน S3 ซึ่งเป็นตารางที่คั่นด้วยแท็บ ฉันต้องการโหลดเป็นแพนด้า แต่ไม่สามารถบันทึกได้ก่อนเนื่องจากฉันใช้งานบนเซิร์ฟเวอร์ heroku นี่คือสิ่งที่ฉันมีจนถึงตอนนี้ import io import boto3 import os import pandas as pd os.environ["AWS_ACCESS_KEY_ID"] = "xxxxxxxx" os.environ["AWS_SECRET_ACCESS_KEY"] = "xxxxxxxx" s3_client = boto3.client('s3') response = s3_client.get_object(Bucket="my_bucket",Key="filename.txt") file = response["Body"] pd.read_csv(file, header=14, delimiter="\t", low_memory=False) ข้อผิดพลาดคือ OSError: Expected file path name or file-like object, got <class 'bytes'> type ฉันจะแปลงร่างตอบสนองเป็นแพนด้ารูปแบบจะยอมรับได้อย่างไร …

11
ไพพ์สตรีมไปที่ s3.upload ()
ฉันกำลังใช้ปลั๊กอิน node.js ที่เรียกว่าs3-upload-streamเพื่อสตรีมไฟล์ขนาดใหญ่มากไปยัง Amazon S3 มันใช้ API หลายส่วนและส่วนใหญ่จะทำงานได้ดีมาก อย่างไรก็ตามโมดูลนี้กำลังแสดงอายุและฉันต้องทำการแก้ไขแล้ว (ผู้เขียนได้เลิกใช้งานแล้วเช่นกัน) วันนี้ฉันพบปัญหาอื่นกับ Amazon และฉันอยากจะทำตามคำแนะนำของผู้เขียนและเริ่มใช้ aws-sdk อย่างเป็นทางการเพื่ออัปโหลดให้สำเร็จ แต่. SDK s3.upload()ที่อย่างเป็นทางการดูเหมือนจะไม่สนับสนุนการท่อ ลักษณะของ s3.upload คือคุณต้องส่งสตรีมที่อ่านได้เป็นอาร์กิวเมนต์ไปยังตัวสร้าง S3 ฉันมีโมดูลรหัสผู้ใช้ประมาณ 120+ รายการที่ประมวลผลไฟล์ต่างๆและไม่เชื่อเรื่องพระเจ้าไปยังปลายทางสุดท้ายของผลลัพธ์ เครื่องยนต์ส่งสตรีมเอาท์พุตที่เขียนได้แบบท่อให้พวกเขาและพวกมันก็ต่อท่อไป ฉันไม่สามารถมอบAWS.S3วัตถุให้พวกเขาและขอให้พวกเขาเรียกupload()ใช้โดยไม่ต้องเพิ่มรหัสให้กับโมดูลทั้งหมด เหตุผลที่ฉันใช้s3-upload-streamก็เพราะว่ามันรองรับท่อ มีวิธีสร้าง aws-sdk ที่s3.upload()ฉันสามารถส่งกระแสข้อมูลไปได้ไหม

30
AWS S3 - วิธีแก้ไขข้อผิดพลาด 'ลายเซ็นคำขอที่เราคำนวณไม่ตรงกับลายเซ็น'
ฉันค้นหาบนเว็บมานานกว่าสองวันแล้วและอาจได้ดูสถานการณ์และวิธีแก้ปัญหาที่มีเอกสารออนไลน์เกือบทั้งหมดแล้ว แต่ก็ยังไม่มีอะไรที่ใช้ได้ผลสำหรับฉันจนถึงตอนนี้ ฉันใช้AWS SDKสำหรับ PHP V2.8.7 ที่ทำงานบน PHP 5.3 ฉันกำลังพยายามเชื่อมต่อกับที่เก็บข้อมูล S3 ของฉันด้วยรหัสต่อไปนี้: // Create a `Aws` object using a configuration file $aws = Aws::factory('config.php'); // Get the client from the service locator by namespace $s3Client = $aws->get('s3'); $bucket = "xxx"; $keyname = "xxx"; try { $result = $s3Client->putObject(array( 'Bucket' => …

9
ไฟล์อัปโหลด Amazon S3 และรับ URL
เป็นไปได้ไหมที่จะอัปโหลดไฟล์ txt / pdf / png ไปยัง Amazon S3 ในครั้งเดียวและรับ URL ของไฟล์ที่อัปโหลดเป็นการตอบกลับ ถ้าเป็นเช่นนั้น AWS Java SDK คือไลบรารีที่เหมาะสมที่ฉันต้องเพิ่มในเว็บแอปพลิเคชัน java struts2 ของฉัน โปรดแนะนำวิธีแก้ปัญหานี้ให้ฉัน

7
ทำสำเนาถัง s3 ได้เร็วขึ้น
ฉันได้รับการพยายามที่จะหาเครื่องมือบรรทัดคำสั่งที่ดีกว่าสำหรับการทำซ้ำบุ้งกี๋กว่าs3cmd s3cmdสามารถทำสำเนาที่เก็บข้อมูลได้โดยไม่ต้องดาวน์โหลดและอัปโหลดแต่ละไฟล์ คำสั่งปกติที่ฉันใช้เพื่อทำสำเนาที่เก็บข้อมูลโดยใช้ s3cmd คือ: s3cmd cp -r --acl-public s3://bucket1 s3://bucket2 วิธีนี้ใช้งานได้ แต่จะช้ามากเนื่องจากคัดลอกไฟล์แต่ละไฟล์ผ่าน API ทีละไฟล์ ถ้าs3cmdสามารถทำงานในโหมดคู่ขนานได้ฉันจะดีใจมาก มีตัวเลือกอื่น ๆ เป็นเครื่องมือบรรทัดคำสั่งหรือรหัสที่ผู้คนใช้เพื่อทำสำเนาที่เก็บข้อมูลที่เร็วกว่าs3cmdหรือไม่ แก้ไข: ดูเหมือนว่าs3cmd-modifiedคือสิ่งที่ฉันกำลังมองหา เสียดายที่ไม่ได้ผล มีทางเลือกอื่นอีกไหม?

14
การดึงชื่อโฟลเดอร์ย่อยในบัคเก็ต S3 จาก boto3
เมื่อใช้ boto3 ฉันสามารถเข้าถึงที่เก็บข้อมูล AWS S3 ของฉัน: s3 = boto3.resource('s3') bucket = s3.Bucket('my-bucket-name') ตอนนี้ถังประกอบด้วยโฟลเดอร์ที่ตัวเองมีหลายโฟลเดอร์ย่อยชื่อด้วยการประทับเวลาตัวอย่างเช่นfirst-level 1456753904534ฉันต้องการทราบชื่อของโฟลเดอร์ย่อยเหล่านี้สำหรับงานอื่นที่ฉันกำลังทำอยู่และฉันสงสัยว่าจะให้ boto3 ดึงข้อมูลเหล่านั้นมาให้ฉันได้หรือไม่ ฉันจึงลอง: objs = bucket.meta.client.list_objects(Bucket='my-bucket-name') ซึ่งให้พจนานุกรมซึ่งคีย์ 'เนื้อหา' ให้ไฟล์ระดับที่สามทั้งหมดแทนไดเร็กทอรีการประทับเวลาระดับที่สองในความเป็นจริงฉันได้รับรายการที่มีสิ่งต่างๆเป็น {u'ETag ':' "etag" ', u'Key': ระดับแรก / 1456753904534 / part-00014 ', u'LastModified': datetime.datetime (2016, 2, 29, 13, 52, 24, tzinfo = tzutc ()), u'Owner ': {u'DisplayName': 'owner', …

4
มีวิธีตั้งค่าขีด จำกัด การเรียกเก็บเงิน Amazon AWS หรือไม่ [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน5 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันกำลังสร้างแอพที่ด้านบนของ Amazon S3 ฉันจะให้ S3 ทำงานภายใต้งบประมาณที่ตั้งไว้ได้อย่างไร สมมติว่าฉันไม่ต้องการให้ปริมาณการใช้งานที่ไม่คาดคิดเรียกเก็บเงินจากบัญชี AWS ของฉันมากเกินไป ฉันค่อนข้างจะไม่สามารถใช้งานได้

2
วิธีจัดเก็บข้อมูลใน S3 และอนุญาตให้ผู้ใช้เข้าถึงอย่างปลอดภัยด้วยไคลเอนต์ Rails API / iOS
ฉันเพิ่งเริ่มเขียน Rails และ API ฉันต้องการความช่วยเหลือเกี่ยวกับโซลูชันพื้นที่จัดเก็บ S3 นี่คือปัญหาของฉัน ฉันกำลังเขียน API สำหรับแอพ iOS ที่ผู้ใช้ล็อกอินด้วย Facebook API บน iOS เซิร์ฟเวอร์ตรวจสอบผู้ใช้กับปัญหาโทเค็น Facebook ให้กับผู้ใช้ iOS และออกโทเค็นเซสชันชั่วคราว จากจุดนี้ผู้ใช้ต้องดาวน์โหลดเนื้อหาที่เก็บไว้ใน S3 เนื้อหานี้เป็นของผู้ใช้และส่วนย่อยของเพื่อนของเขาเท่านั้น ผู้ใช้รายนี้สามารถเพิ่มเนื้อหาเพิ่มเติมใน S3 ซึ่งคนกลุ่มเดียวกันสามารถเข้าถึงได้ เดาว่าคล้ายกับการแนบไฟล์ในกลุ่ม Facebook ... มี 2 ​​วิธีที่ผู้ใช้สามารถโต้ตอบกับ S3 ... ปล่อยไว้ที่เซิร์ฟเวอร์หรือให้เซิร์ฟเวอร์ออกโทเค็น S3 ชั่วคราว (ไม่แน่ใจในความเป็นไปได้ที่นี่) และผู้ใช้สามารถเข้าถึง URL เนื้อหาไปยัง S3 ได้โดยตรง ฉันพบว่าคำถามนี้พูดถึงแนวทาง แต่มันล้าสมัยไปแล้ว (2 ปีที่แล้ว): คำถามเกี่ยวกับสถาปัตยกรรมและการออกแบบเกี่ยวกับการอัปโหลดรูปภาพจากแอพ iPhone …

9
วิธีสร้าง 10,000 ไฟล์ใน S3 สาธารณะ
ฉันมีโฟลเดอร์ในที่เก็บข้อมูล 10,000 ไฟล์ ดูเหมือนว่าจะไม่มีวิธีใดในการอัปโหลดและทำให้เป็นแบบสาธารณะทันที ดังนั้นฉันจึงอัปโหลดทั้งหมดเป็นแบบส่วนตัวและฉันต้องทำให้เป็นแบบสาธารณะทั้งหมด ฉันได้ลองใช้คอนโซล aws แล้วมันทำให้เกิดข้อผิดพลาด (ทำงานได้ดีกับโฟลเดอร์ที่มีไฟล์น้อยกว่า) ฉันได้ลองใช้ S3 จัดระเบียบใน Firefox เหมือนกัน มีซอฟต์แวร์หรือสคริปต์บางตัวที่ฉันสามารถเรียกใช้เพื่อทำให้สิ่งเหล่านี้เป็นสาธารณะได้หรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.