![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Create S3 Pre-Signed URL for UploadDemonstrates how to generate a pre-signed URL for S3 uploads. Note: This example requires Chilkat v11.0.0 or greater.
Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoHttp String sBucketName String sObjectName String sAwsService String sHttpVerb Integer iNumSecondsValid Boolean iBUseHttps String sPreSignedUrl Variant vResp Handle hoResp String sTemp1 Integer iTemp1 Boolean bTemp1 Move False To iSuccess // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End Set ComAwsAccessKey Of hoHttp To "AWS_ACCESS_KEY" Set ComAwsSecretKey Of hoHttp To "AWS_SECRET_KEY" // Make sure to set your AWS region correctly Set ComAwsRegion Of hoHttp To "us-east-1" Move "chilkat200" To sBucketName Move "starfish/starfish.jpg" To sObjectName Move "s3" To sAwsService Move "PUT" To sHttpVerb // The signed URL will be valid for this number of seconds: Move 86400 To iNumSecondsValid // Choose between a URL beginning with "http://" or "https://"... Move False To iBUseHttps // Generate the pre-signed URL Get ComS3_GenPresignedUrl Of hoHttp sHttpVerb iBUseHttps sBucketName sObjectName iNumSecondsValid sAwsService To sPreSignedUrl Get ComLastMethodSuccess Of hoHttp To bTemp1 If (bTemp1 = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Showln "Presigned URL for Upload: " sPreSignedUrl // Here's an example of a pre-signed URL // // http://chilkat200.s3.amazonaws.com/starfish/starfish.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIBJLOVZVXAU2AFUA%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T234049Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=xxxxxeaea071178d772856c0a4e4c0114a8d9992f0d0812955e490d0exxxxxxx // // You can use the pre-signed URL to upload from Chilkat // For example, upload by streaming from a local file Get Create (RefClass(cComChilkatHttpResponse)) To hoResp If (Not(IsComObjectCreated(hoResp))) Begin Send CreateComObject of hoResp End Get pvComObject of hoResp to vResp Get ComHttpFile Of hoHttp "PUT" sPreSignedUrl "qa_data/jpg/starfish.jpg" "image/jpg" vResp To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get ComStatusCode Of hoResp To iTemp1 Showln "response status code = " iTemp1 Get ComContentLength Of hoResp To iTemp1 Showln "response body size: " iTemp1 Get ComContentLength Of hoResp To iTemp1 If (iTemp1 > 0) Begin Showln "response body:" Get ComBodyStr Of hoResp To sTemp1 Showln sTemp1 End End_Procedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.