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
(DataFlex) S3 List Bucket Objects (Bucket-in-Path)Demonstrates how to fetch a list of objects in an S3 bucket, but using the bucket-in-path request format instead of putting the bucket name in the HOST header.
Use ChilkatAx-win32.pkg Procedure Test Handle hoRest Boolean iBTls Integer iPort Boolean iBAutoReconnect Boolean iSuccess Variant vAuthAws Handle hoAuthAws Variant vSbResponse Handle hoSbResponse Integer iStatusCode Handle hoXml String sKey String sLastModified String sETag String sSizeDecimalStr String sID String sDisplayName String sStorageClass String sName Integer iMaxKeys String sIsTruncated Integer i Integer iCount_i String sTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatRest)) To hoRest If (Not(IsComObjectCreated(hoRest))) Begin Send CreateComObject of hoRest End // Connect to the Amazon AWS REST server. Move True To iBTls Move 443 To iPort Move True To iBAutoReconnect Get ComConnect Of hoRest "s3.amazonaws.com" iPort iBTls iBAutoReconnect To iSuccess // ---------------------------------------------------------------------------- // Important: For buckets created in regions outside us-east-1, // there are three important changes that need to be made. // See Working with S3 Buckets in Non-us-east-1 Regions for the details. // ---------------------------------------------------------------------------- // Provide AWS credentials for the REST call. Get Create (RefClass(cComChilkatAuthAws)) To hoAuthAws If (Not(IsComObjectCreated(hoAuthAws))) Begin Send CreateComObject of hoAuthAws End Set ComAccessKey Of hoAuthAws To "AWS_ACCESS_KEY" Set ComSecretKey Of hoAuthAws To "AWS_SECRET_KEY" Set ComServiceName Of hoAuthAws To "s3" Get pvComObject of hoAuthAws to vAuthAws Get ComSetAuthAws Of hoRest vAuthAws To iSuccess // The bucket name is "chilkat100" Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponse If (Not(IsComObjectCreated(hoSbResponse))) Begin Send CreateComObject of hoSbResponse End Get pvComObject of hoSbResponse to vSbResponse Get ComFullRequestNoBodySb Of hoRest "GET" "/chilkat100" vSbResponse To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End Get ComResponseStatusCode Of hoRest To iStatusCode Showln "Response status code = " iStatusCode Get Create (RefClass(cComChilkatXml)) To hoXml If (Not(IsComObjectCreated(hoXml))) Begin Send CreateComObject of hoXml End Get pvComObject of hoSbResponse to vSbResponse Get ComLoadSb Of hoXml vSbResponse True To iSuccess Get ComGetXml Of hoXml To sTemp1 Showln sTemp1 If (iStatusCode <> 200) Begin Showln "Failed. See error information in the XML." Procedure_Return End // Use this online tool to generate code from sample XML: // Generate Code to Create XML Get ComGetChildContent Of hoXml "Name" To sName Get ComGetChildIntValue Of hoXml "MaxKeys" To iMaxKeys Get ComGetChildContent Of hoXml "IsTruncated" To sIsTruncated Move 0 To i Get ComNumChildrenHavingTag Of hoXml "Contents" To iCount_i While (i < iCount_i) Set ComI Of hoXml To i Get ComGetChildContent Of hoXml "Contents[i]|Key" To sKey Get ComGetChildContent Of hoXml "Contents[i]|LastModified" To sLastModified Get ComGetChildContent Of hoXml "Contents[i]|ETag" To sETag Get ComGetChildContent Of hoXml "Contents[i]|Size" To sSizeDecimalStr Get ComGetChildContent Of hoXml "Contents[i]|Owner|ID" To sID Get ComGetChildContent Of hoXml "Contents[i]|Owner|DisplayName" To sDisplayName Get ComGetChildContent Of hoXml "Contents[i]|StorageClass" To sStorageClass Move (i + 1) To i Loop Showln "Success." End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.