Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Amazon S3 - Create Bucket with ConstraintCreate an Amazon S3 bucket with a constraint using the REST API.
Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") Set outFile = fso.CreateTextFile("output.txt", True) set http = CreateObject("Chilkat.Http") success = http.UnlockComponent("Anything for 30-day trial.") If (success <> 1) Then ' Unlock failed. MsgBox http.LastErrorText WScript.Quit End If ' Create the XML contraint for the bucket: ' <CreateBucketConfiguration> ' <LocationConstraint>EU</LocationConstraint> ' </CreateBucketConfiguration> set xml = CreateObject("Chilkat.Xml") xml.Tag = "CreateBucketConfiguration" xml.NewChild2 "LocationConstraint","EU" outFile.WriteLine(xml.GetXml()) set crypt = CreateObject("Chilkat.Crypt2") success = crypt.UnlockComponent("Anything for 30-day trial.") If (success <> 1) Then MsgBox crypt.LastErrorText WScript.Quit End If ' The HTTP component now includes a method to generate ' the current date/time in RFC 2616 compliant format. ' Note: The GenTimeStamp method is available as a pre-release (as of 18-June-2008). ' It will become available in the next new version dated after ' 18-June-2008. curDateTime = http.GenTimeStamp() ' The PUT request operation with a bucket URI creates a new bucket. strToSign = "PUT" & vbLf & vbLf & "text/xml" & vbLf & curDateTime & vbLf & "/chilkat2/" ' We want SHA1 for the HMAC hash algorithm: crypt.HashAlgorithm = "sha1" ' These must be changed for your account: AWSAccessKeyId = "zzzzzzzzzzzzzzzzzzzz" AWSSecretAccessKey = "zzzzzzzzzzzzzzzzzzzzzzzzzz" ' Set the HMAC secret key: crypt.SetHmacKeyString AWSSecretAccessKey ' By setting the charset = "utf-8", the string will be converted ' to utf-8 (internal to the Chilkat component) prior to signing: crypt.Charset = "utf-8" ' Indicate that Base64 output is desired: crypt.EncodingMode = "base64" signature = crypt.HmacStringENC(strToSign) authValue = "AWS " & AWSAccessKeyId & ":" & signature ' The bucket to be created is specified in the Host header. ' In this example, the "chilkat2" bucket is created: http.SetRequestHeader "Host","chilkat2.s3.amazonaws.com" http.SetRequestHeader "Authorization",authValue http.SetRequestHeader "Date",curDateTime xmlResponse = http.XmlRpcPut("http://s3.amazonaws.com/",xml.GetXml()) If (xmlResponse = vbNullString ) Then outFile.WriteLine("NULL response") outFile.WriteLine("---") ' Failed. Show the last request header, response header, ' and response body. outFile.WriteLine(http.LastHeader) outFile.WriteLine("---") outFile.WriteLine(http.LastResponseHeader) outFile.WriteLine("---") outFile.WriteLine(http.LastErrorText) Else ' Success is indicated by an empty xmlResponse string, and ' a response status of 200. If (http.LastStatus = 200) Then MsgBox "Bucket created!" ' Let's check out the response header anyway... outFile.WriteLine(http.LastResponseHeader) Else outFile.WriteLine("LastStatus: " & http.LastStatus) outFile.WriteLine("---") ' Failed. Show the last request header, response header, ' and response body. outFile.WriteLine(http.LastHeader) outFile.WriteLine("---") outFile.WriteLine(http.LastResponseHeader) outFile.WriteLine("---") outFile.WriteLine(http.LastErrorText) End If End If outFile.Close |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.