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) REST Read Binary Response into BinData Object (Amazon S3)Demonstrates how to make a REST call that returns a binary response body. This example is valid for files that fit in memory. The example shows how to download a JPG from the Amazon S3 service.
Use ChilkatAx-win32.pkg Procedure Test Handle hoRest Boolean iBTls Integer iPort Boolean iBAutoReconnect Boolean iSuccess Variant vAuthAws Handle hoAuthAws Integer iResponseStatusCode String sErrResponse Variant vBdBody Handle hoBdBody String sTemp1 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 // ---------------------------------------------------------------------------- // 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 // Set the bucket name via the HOST header. // In this case, the bucket name is "chilkat100". Set ComHost Of hoRest To "chilkat100.s3.amazonaws.com" // Send the request to download the JPG. Get ComSendReqNoBody Of hoRest "GET" "/starfish.jpg" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End // Read the response header. Get ComReadResponseHeader Of hoRest To iResponseStatusCode If (iResponseStatusCode < 0) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End Showln "Response status code = " iResponseStatusCode // We expect a 200 response status if the JPG data is coming. // Otherwise, we'll get a string response body with an error message(or no response body). If (iResponseStatusCode <> 200) Begin Get ComReadRespBodyString Of hoRest To sErrResponse Get ComLastMethodSuccess Of hoRest To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 End Else Begin Showln sErrResponse End Procedure_Return End Get Create (RefClass(cComChilkatBinData)) To hoBdBody If (Not(IsComObjectCreated(hoBdBody))) Begin Send CreateComObject of hoBdBody End Get pvComObject of hoBdBody to vBdBody Get ComReadRespBd Of hoRest vBdBody To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End // Save the contents of the response body to a file. Get ComWriteFile Of hoBdBody "qa_output/starfish.jpg" To iSuccess If (iSuccess = True) Begin Showln "Success" End Else Begin Showln "Failed to write file." End End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.