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
(PowerBuilder) Wasabi List Bucket ObjectsSee more Wasabi ExamplesDemonstrates how to download and parse XML for the list of objects in a bucket.
integer li_rc oleobject loo_Http string ls_BucketName string ls_StrXml oleobject loo_Xml integer li_Success string ls_Key string ls_LastModified string ls_ETag string ls_SizeDecimalStr string ls_ID string ls_DisplayName string ls_StorageClass string ls_ListBucketResult_xmlns string ls_Name integer li_MaxKeys string ls_IsTruncated integer i integer li_Count_i // This example assumes the Chilkat HTTP API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Http = create oleobject // Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0 li_rc = loo_Http.ConnectToNewObject("Chilkat.Http") if li_rc < 0 then destroy loo_Http MessageBox("Error","Connecting to COM object failed") return end if // Insert your access key here: loo_Http.AwsAccessKey = "access-key" // Insert your secret key here: loo_Http.AwsSecretKey = "secret-key" // Use the endpoint matching the bucket's region. loo_Http.AwsEndpoint = "s3.us-west-1.wasabisys.com" ls_BucketName = "chilkattest" ls_StrXml = loo_Http.S3_ListBucketObjects(ls_BucketName) if loo_Http.LastMethodSuccess <> 1 then Write-Debug loo_Http.LastErrorText destroy loo_Http return end if Write-Debug "Response status code = " + string(loo_Http.LastStatus) loo_Xml = create oleobject // Use "Chilkat_9_5_0.Xml" for versions of Chilkat < 10.0.0 li_rc = loo_Xml.ConnectToNewObject("Chilkat.Xml") li_Success = loo_Xml.LoadXml(ls_StrXml) if li_Success <> 1 then Write-Debug loo_Xml.LastErrorText destroy loo_Http destroy loo_Xml return end if // If the response status code was not 200, then the XML response is not a // listing of objects, but instead contains error information. if loo_Http.LastStatus <> 200 then Write-Debug loo_Xml.GetXml() Write-Debug "Failed." destroy loo_Http destroy loo_Xml return end if // A sample response is shown below. Write-Debug loo_Xml.GetXml() Write-Debug "----" // 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> ls_ListBucketResult_xmlns = loo_Xml.GetAttrValue("xmlns") ls_Name = loo_Xml.GetChildContent("Name") li_MaxKeys = loo_Xml.GetChildIntValue("MaxKeys") ls_IsTruncated = loo_Xml.GetChildContent("IsTruncated") i = 0 li_Count_i = loo_Xml.NumChildrenHavingTag("Contents") do while i < li_Count_i loo_Xml.I = i ls_Key = loo_Xml.GetChildContent("Contents[i]|Key") ls_LastModified = loo_Xml.GetChildContent("Contents[i]|LastModified") ls_ETag = loo_Xml.GetChildContent("Contents[i]|ETag") ls_SizeDecimalStr = loo_Xml.GetChildContent("Contents[i]|Size") ls_ID = loo_Xml.GetChildContent("Contents[i]|Owner|ID") ls_DisplayName = loo_Xml.GetChildContent("Contents[i]|Owner|DisplayName") ls_StorageClass = loo_Xml.GetChildContent("Contents[i]|StorageClass") Write-Debug string(i) + ": " + ls_Key i = i + 1 loop destroy loo_Http destroy loo_Xml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.