Also ich möchte eine Liste aller Objekte in meinem S3-Bucket erhalten. Ich habe es gerade in eine Express-Route-Anwendung gebracht, die ich schnell eingerichtet habe (es ist nicht wirklich wichtig, dass es nur in Express ist, womit ich mich auskenne).Greifen von Objekten aus einem S3-Bucket
Also ich tue:
var allObjs = [];
s3.listObjects({Bucket: 'myBucket'}, function(err, data) {
var stringifiedObjs = JSON.stringify(allObjs);
fs.writeFile("test", stringifiedObjs, function(err) {})
}
Welche meine Objekte packt, stringifys sie und schreibt sie in einem Test namens Datei. Das Problem, das ich habe, ist, dass es nur 1.000 Ergebnisse bekommt.
Ich habe irgendwo gelesen (ich kann nicht finden, wo), dass AWS Sie auf 1.000 Ergebnisse pro Anruf beschränkt.
Wie kann ich das wiederholen und die nächsten 1.000 greifen? Aber so stellen Sie sicher, dass es die nächste inkrementierte 1.000 nicht immer die erste ist?
Kurz gesagt, wie kann ich jedes Objekt in meinem S3-Bucket bekommen? Ich bin in der Dokumentation verloren gegangen.
Vielen Dank!
EDIT
Das ist mein Ziel ich zurück:
{ Key: 'bucket_path/e11_19_9a31mv3ot51tm384grjd6rdj51boxx_q_q112.png',
LastModified: Sat Apr 23 2016 09:16:23 GMT+0100 (BST),
ETag: '"7d50fsdfsd4sda159b32cf85c683c5924"',
Size: 704222,
StorageClass: 'STANDARD',
Owner:
{ DisplayName: 'servers',
ID: '58af203151c51eddf2sdfs411e0b91d274a8fda23f58280f9b06371e436f7' } },
'{isTruncated: true, Marker: '', Inhalt: [{MyObjects}], Name: 'myBucket', Präfix : '', MaxKeys: 1000, CommonPrefixes: []} ' Dies ist die Antwort, die ich zurück .. es gibt keine' NextMarker' für mich auch Anruf von – PourMeSomeCode
Ignoriere meinen vorherigen Kommentar Prost Mann! Das funktioniert! Die von Ihnen erwähnte ".eachPage" fügt den Marker automatisch automatisch für Sie ein. Süß: D – PourMeSomeCode