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
(Perl) S3 - Working with Buckets in a RegionDemonstrates how to work with S3 buckets located in a particular region.
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # When usig the REST class to access an S3 bucket that has been created in a particular region, # there are three important things to remember: # # 1) Connect to the domain that includes the region. For example, instead of connecting to # "s3.amazonaws.com", connect to "s3.eu-central-1.amazonaws.com" if your bucket is in the EU Frankfurt region. # See http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region for a list of S3 region domains (endpoints) # # 2) Set the AuthAws.Region property equal to the region, such as "eu-central-1". # # 3) Include the region in request's Host header. # # This example will upload to a bucket in the eu-central-1 region. # $rest = chilkat::CkRest->new(); # Connect to the Amazon AWS REST server. $bTls = 1; $port = 443; $bAutoReconnect = 1; $success = $rest->Connect("s3.eu-central-1.amazonaws.com",$port,$bTls,$bAutoReconnect); # Provide AWS credentials for the REST call. $authAws = chilkat::CkAuthAws->new(); $authAws->put_AccessKey("AWS_ACCESS_KEY"); $authAws->put_SecretKey("AWS_SECRET_KEY"); $authAws->put_ServiceName("s3"); $authAws->put_Region("eu-central-1"); $success = $rest->SetAuthAws($authAws); # Set the bucket name via the HOST header. # In this case, the bucket name is "chilkateufrankfurt" (which was created in the eu-central-1 region) $rest->put_Host("chilkateufrankfurt.s3.eu-central-1.amazonaws.com"); $fileData = chilkat::CkBinData->new(); $success = $fileData->LoadFile("qa_data/jpg/starfish.jpg"); # Upload the file to Amazon S3. $responseBody = chilkat::CkStringBuilder->new(); $success = $rest->FullRequestBd("PUT","/starfish.jpg",$fileData,$responseBody); if ($success != 1) { print $rest->lastErrorText() . "\r\n"; exit; } # Did we get a 200 response indicating success? $statusCode = $rest->get_ResponseStatusCode(); if ($statusCode != 200) { print "Error response: " . $responseBody->getAsString() . "\r\n"; print "Status code: " . $statusCode . ", Status text: " . $rest->responseStatusText() . "\r\n"; exit; } print "File successfully uploaded." . "\r\n"; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.