Zum Hauptinhalt wechseln
Adaptive Planning
Zuletzt aktualisiert: 2023-06-23
ai.awss3

ai.awss3

Funktionen

Methode
Parameter
Retouren
Beschreibung
getFile(bucketName, key, region, awsAccessKey, AwsSecretKey)
BucketName: Zeichenfolge
Schlüssel: Zeichenfolge
region: Zeichenfolge
awsAcceskey: String
awsSecretKey: String
Ruft eine Datei aus einem AWS S3-Bucket ab.
putFile(bucketName, key, region, awsAccessKey, AwsSecretKey)
BucketName: Zeichenfolge
Schlüssel: Zeichenfolge
doc:String
region: Zeichenfolge
awsAcceskey: String
awsSecretKey: String
Legt eine Datei in einen AWS S3-Bucket ab.
listKeys(bucketName, region, awsAccessKey, awsSecretKey)
Nicht empfohlen für Buckets mit mehr als 5.000 Schlüsseln.
BucketName: Zeichenfolge
region: Zeichenfolge
awsAcceskey: String
awsSecretKey: String
Listet die Schlüssel (Dateien) in einem AWS S3-Bucket auf.
listObjects(request, region, awsAccessKey, awsSecretKey)
Fordern Sie Objektparameter an
Weitere Informationen finden Sie unter Amazon S3 Request Documents .
BucketName: Zeichenfolge (erforderlich).
fortsetzenToken: Gibt an, dass die Liste für diesen Bucket mit einem Token fortgesetzt wird. Das NextContinuationToken aus der vorherigen Antwort.
delimiter: Ein Zeichen, das zum Gruppieren von Schlüsseln verwendet wird. Siehe Dokumente zu Amazon S3 Listing Keys hierarchisch.
Codierung: Die Codierungsmethode, die in der Antwort verwendet werden soll.
fechOutlet: Wird auf „true“ gesetzt, um die Eigentümer mit jedem Schlüssel aufzulisten. Wenn nicht angegeben, ist der Eigentümer „0“.
maxKeys: Die maximale Anzahl von Schlüsseln in der Antwort.
prefix: Beschränkt die Antwort auf Schlüssel, die mit dem angegebenen Präfix beginnen.
requestUser: Zeichenfolge
startAfter: Die Liste beginnt nach diesem Schlüssel. Verwenden Sie einen beliebigen Schlüssel im Bucket. Kann nicht gleichzeitig mit dem Wert für die Dauer festgelegt werden.
Antwortobjektparameter
Weitere Details finden Sie in den Amazon S3-Antwortdokumenten .
s3Objects: Liste der gefundenen Objekte.
keyCount: Anzahl der gefundenen Objekte.
isTruncated: Gibt an, ob weitere Schlüssel mit der ursprünglichen Anforderung übereinstimmen. Kann in der Anforderung angegeben werden. AWS-Standardwert ist 1000.
NextContinuationToken: Wird gesendet, wenn isTruncated „true“ ist, was bedeutet, dass weitere Schlüssel im Bucket aufgelistet werden können. Die Liste kann mit diesem NextContinuationToken fortgesetzt werden.
httpStatusCode:
Name:
Präfix:
maxKeys:
delimiter:
gemeinsamenPräfixe:
Codierung:
continuationToken:
startAfter:
Listet die Objekte in einem AWS S3-Bucket auf. Ermöglicht die Verwendung von Parametern in einer Anforderung, um die abgerufenen Schlüssel zu begrenzen und zu filtern.
Beispiele
// Invoke this method using 'Test connection' in Actions pane function testConnection(context) { exampleGetFile(context); exampleListKeys(context); return true; } //Example for getFile function exampleGetFile(context) { var bucketName = 'xxx'; var key = 'newfile.xml'; var awsAccessKey = 'xxx'; var awsSecretKey = 'xxx'; var region = 'xxx'; var doc = ai.xml.createDocument(); var myFile=ai.awss3.getFile(bucketName, key, region, awsAccessKey, awsSecretKey); ai.log.logVerbose("File contents are",JSON.stringify(myFile)); } //Column,Heading,Names\n,2016-05-31T00:00:00,49570.89,4110_Product_Revenue_Grp_A,Sales - Canada\n,..... //Example for listkeys function exampleListKeys(context) { var bucketName = 'xxx'; var key = 'test.csv'; var awsAccessKey = 'xxx'; var awsSecretKey = 'xxx'; var region = 'xxx'; var myFile=ai.awss3.listKeys(bucketName, region, awsAccessKey, awsSecretKey); ai.log.logVerbose("Keys are",JSON.stringify(myFile)); return true; } //Keys are ["attribute-import-demo.csv","cloadertest.csv"] //Example for putFile function exportData(context) { var bucketName = 'xxx'; var key = 'newfile.xml'; var awsAccessKey = 'xxx'; var awsSecretKey = 'xxx'; var region = 'xxx'; var doc = ai.xml.createDocument(); var requestEl = ai.xml.createElement('request'); doc.setRootElement(requestEl); ai.awss3.putFile(bucketName, key, doc.toString(), region, awsAccessKey, awsSecretKey); //This will create the "newfile.xml" with a single line "<request />" }
Beispiel mit listObjects
Dieses Beispiel zeigt, wie Sie Objekte anfordern und durch die Ergebnisse blättern.
//Navigate to Designer Settings tab and add 2 "text" parameters from the Settings pane. //Enter awsAccessKey and awsSecretKey in the Name fileds and provide your keys in the Value field function processFiles(context) { // Retrieve access and secret keys from settings const awsAccessKey = context.getDataSource().getSetting('awsAccessKey').getValue(); const awsSecretKey = context.getDataSource().getSetting('awsSecretKey').getValue(); const region = 'us-west-1' // Create the request for objects, at a minimum a bucket name is required const request = { BucketName: 'xxx', Prefix: 'mydata/', // Return keys from this directory }; // Push all the keys into an array const keyNames = []; let processing = true; while (processing) { var response = ai.awss3.listObjects(request, region, awsAccessKey, awsSecretKey); for (const entry of response.s3Objects) { // Here we have a single key that can be processed as desired keyNames.push(entry.key); } if (response.isTruncated) { // If the response did not include all remaining results, use the // nextContinuationToken from the response in the next request request.ContinuationToken = response.nextContinuationToken; } else { // If the response did include all remaining results, exit the loop ai.log.logInfo('Response indicated no further keys available'); processing = false; } } ai.log.logInfo("List of Objects:"+JSON.stringify(keyNames)); //List of Objects:["attribute-import-demo (7).csv","cloadertest.csv"] }
Beispielparameteranforderung
Parameter
BucketName
ist der einzige erforderliche Wert.
Prefix
gibt das Verzeichnis an.
{ BucketName: 'ag-ccds-test', Prefix: 'samplenumber/', StartAfter: 'samplenumber/001_samplefile', MaxKeys: 3 }
BeispiellisteObjekte
Diese Beispielantwort von listOjbects enthält 8 Objekte.
{ "isTruncated": true, "s3Objects": [ { "eTag": "\"4c7507b8cf17a6650bcff6787ccd0915\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575352592693.txt", "lastModified": "2019-12-03T15:56:34+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353843184.txt", "lastModified": "2019-12-03T16:17:24+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353844190.txt", "lastModified": "2019-12-03T16:17:25+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353845193.txt", "lastModified": "2019-12-03T16:17:26+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353846195.txt", "lastModified": "2019-12-03T16:17:27+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353847194.txt", "lastModified": "2019-12-03T16:17:28+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353848223.txt", "lastModified": "2019-12-03T16:17:29+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } }, { "eTag": "\"b2addf641c43f17df4492524c834984c\"", "bucketName": "ag-ccds-test", "key": "archiveListing/archiveList_1575353849192.txt", "lastModified": "2019-12-03T16:17:30+10:00", "owner": null, "size": 1323, "storageClass": { "value": "STANDARD" } } ], "name": "ag-ccds-test", "prefix": "archiveListing/", "maxKeys": 8, "commonPrefixes": [], "delimiter": null, "encoding": null, "keyCount": 8, "continuationToken": null, "nextContinuationToken": "1Vut/ORdOSPdn8ZQdd8Z5nhNvlEfPkw0hkekFIDTVzk8Hn8jlttn/yIjkl67yK3RAUkPIoUHwDuiybia7Rx7YjVaRefLocnF4", "startAfter": null, "responseMetadata": { "requestId": "5ACCAA141D2F7D2B", "metadata": { "x-amz-id-2": "zlslMcRM+qj6SCKELuE2crlEzhc0eEFkpo5OC3Pzn9tMvtOYnaEkLoRQNj1m1SThPzI1lQ233Zo=" } }, "contentLength": -1, "httpStatusCode": 200 }