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) Create S3 Bucket in a RegionSee more Amazon S3 ExamplesDemonstrates how to create an S3 bucket in a specified region. This example will create a bucket in the eu-west-2 region. For more information, see https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
Use ChilkatAx-win32.pkg Procedure Test Handle hoRest Boolean iBTls Integer iPort Boolean iBAutoReconnect Boolean iSuccess Variant vAuthAws Handle hoAuthAws String sBucketRegion Handle hoSbBucketRegion Handle hoXml String sResponseStr Handle hoResponseXml String sTemp1 Integer iTemp1 Boolean bTemp1 // 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 // 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 // We'll send a PUT request having an XML body such as this: // <CreateBucketConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> // <LocationConstraint>BucketRegion</LocationConstraint> // </CreateBucketConfiguration> // Create the XML body specifying the region as "eu-west-2" Move "eu-west-2" To sBucketRegion Get Create (RefClass(cComChilkatStringBuilder)) To hoSbBucketRegion If (Not(IsComObjectCreated(hoSbBucketRegion))) Begin Send CreateComObject of hoSbBucketRegion End Get ComAppend Of hoSbBucketRegion sBucketRegion To iSuccess // We only need to specify the LocationConstraint if the bucket's region is NOT us-east-1 Get Create (RefClass(cComChilkatXml)) To hoXml If (Not(IsComObjectCreated(hoXml))) Begin Send CreateComObject of hoXml End Get ComContentsEqual Of hoSbBucketRegion "us-east-1" To bTemp1 If (Not bTemp1) Begin Set ComTag Of hoXml To "CreateBucketConfiguration" Get ComAddAttribute Of hoXml "xmlns" "http://s3.amazonaws.com/doc/2006-03-01/" To iSuccess Send ComUpdateChildContent To hoXml "LocationConstraint" "eu-west-2" End // -------------------------------------------------------------- // IMPORTANT: To create a bucket in the default us-east-1 region, // do not add the LocationConstraint. Adding a LocationConstraint of "us-east-1" // causes an error "The specified location-constraint is not valid." // By default, the bucket is created in us-east-1 by sending a PUT with an empty body. // -------------------------------------------------------------- // Set the bucket name via the HOST header. // In this case, the bucket name is "chilkateuwest2". Set ComHost Of hoRest To "chilkateuwest2.s3.amazonaws.com" // Make the call to create the bucket. Get ComContentsEqual Of hoSbBucketRegion "us-east-1" To bTemp1 If (Not bTemp1) Begin Get ComGetXml Of hoXml To sTemp1 Get ComFullRequestString Of hoRest "PUT" "/" sTemp1 To sResponseStr End Else Begin // If the bucket is to be created in the us-east-1 region (the default region) // just send a PUT with no body. Get ComFullRequestNoBody Of hoRest "PUT" "/" To sResponseStr End Get ComLastMethodSuccess Of hoRest To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End Get ComResponseStatusCode Of hoRest To iTemp1 If (iTemp1 <> 200) Begin Get ComResponseStatusCode Of hoRest To iTemp1 Showln "status code = " iTemp1 Get Create (RefClass(cComChilkatXml)) To hoResponseXml If (Not(IsComObjectCreated(hoResponseXml))) Begin Send CreateComObject of hoResponseXml End Get ComLoadXml Of hoResponseXml sResponseStr To iSuccess Get ComGetXml Of hoResponseXml To sTemp1 Showln sTemp1 Showln "Failed." Procedure_Return End Showln "Bucket in the eu-west-2 region created." End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.