Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) Wasabi List Bucket ObjectsSee more Wasabi ExamplesDemonstrates how to download and parse XML for the list of objects in a bucket.
LOCAL loHttp LOCAL lcBucketName LOCAL lcStrXml LOCAL loXml LOCAL lnSuccess LOCAL lcKey LOCAL lcLastModified LOCAL lcETag LOCAL lcSizeDecimalStr LOCAL lcID LOCAL lcDisplayName LOCAL lcStorageClass LOCAL lcListBucketResult_xmlns LOCAL lcName LOCAL lnMaxKeys LOCAL lcIsTruncated LOCAL i LOCAL lnCount_i * This example assumes the Chilkat HTTP API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http') loHttp = CreateObject('Chilkat.Http') * Insert your access key here: loHttp.AwsAccessKey = "access-key" * Insert your secret key here: loHttp.AwsSecretKey = "secret-key" * Use the endpoint matching the bucket's region. loHttp.AwsEndpoint = "s3.us-west-1.wasabisys.com" lcBucketName = "chilkattest" lcStrXml = loHttp.S3_ListBucketObjects(lcBucketName) IF (loHttp.LastMethodSuccess <> 1) THEN ? loHttp.LastErrorText RELEASE loHttp CANCEL ENDIF ? "Response status code = " + STR(loHttp.LastStatus) * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Xml') loXml = CreateObject('Chilkat.Xml') lnSuccess = loXml.LoadXml(lcStrXml) IF (lnSuccess <> 1) THEN ? loXml.LastErrorText RELEASE loHttp RELEASE loXml CANCEL ENDIF * If the response status code was not 200, then the XML response is not a * listing of objects, but instead contains error information. IF (loHttp.LastStatus <> 200) THEN ? loXml.GetXml() ? "Failed." RELEASE loHttp RELEASE loXml CANCEL ENDIF * A sample response is shown below. ? loXml.GetXml() ? "----" * Use this online tool to generate parsing code from sample XML: * Generate Parsing Code from XML * <?xml version="1.0" encoding="UTF-8"?> * <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> * <Name>chilkattest</Name> * <Prefix/> * <Marker/> * <MaxKeys>1000</MaxKeys> * <IsTruncated>false</IsTruncated> * <Contents> * <Key>orchard.json</Key> * <LastModified>2021-10-27T22:58:49.000Z</LastModified> * <ETag>"303fb46cf341094fef6274b7789cd6aa"</ETag> * <Size>22</Size> * <Owner> * <ID>1039F31570DBC320E89D391632FCA06FE6D10CBB2ADBD0BF6439BB1DA0C3FAD6</ID> * <DisplayName>admin</DisplayName> * </Owner> * <StorageClass>STANDARD</StorageClass> * </Contents> * <Contents> * <Key>seahorse.jpg</Key> * <LastModified>2021-10-27T22:35:29.000Z</LastModified> * <ETag>"a8551f0a5437f43a796fca7623ee9232"</ETag> * <Size>24388</Size> * <Owner> * <ID>1039F31570DBC320E89D391632FCA06FE6D10CBB2ADBD0BF6439BB1DA0C3FAD6</ID> * <DisplayName>admin</DisplayName> * </Owner> * <StorageClass>STANDARD</StorageClass> * </Contents> * <Contents> * <Key>seahorse2.jpg</Key> * <LastModified>2021-10-27T22:03:51.000Z</LastModified> * <ETag>"a8551f0a5437f43a796fca7623ee9232"</ETag> * <Size>24388</Size> * <Owner> * <ID>1039F31570DBC320E89D391632FCA06FE6D10CBB2ADBD0BF6439BB1DA0C3FAD6</ID> * <DisplayName>admin</DisplayName> * </Owner> * <StorageClass>STANDARD</StorageClass> * </Contents> * </ListBucketResult> lcListBucketResult_xmlns = loXml.GetAttrValue("xmlns") lcName = loXml.GetChildContent("Name") lnMaxKeys = loXml.GetChildIntValue("MaxKeys") lcIsTruncated = loXml.GetChildContent("IsTruncated") i = 0 lnCount_i = loXml.NumChildrenHavingTag("Contents") DO WHILE i < lnCount_i loXml.I = i lcKey = loXml.GetChildContent("Contents[i]|Key") lcLastModified = loXml.GetChildContent("Contents[i]|LastModified") lcETag = loXml.GetChildContent("Contents[i]|ETag") lcSizeDecimalStr = loXml.GetChildContent("Contents[i]|Size") lcID = loXml.GetChildContent("Contents[i]|Owner|ID") lcDisplayName = loXml.GetChildContent("Contents[i]|Owner|DisplayName") lcStorageClass = loXml.GetChildContent("Contents[i]|StorageClass") ? STR(i) + ": " + lcKey i = i + 1 ENDDO RELEASE loHttp RELEASE loXml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.