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
(AutoIt) Streaming Decrypt HTTP ResponseIf the an encrypted file was previously uploaded, this example demonstrates how to download and decrypt in a streaming way.
; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. $oRest = ObjCreate("Chilkat.Rest") Local $bTls = True Local $iPort = 443 Local $bAutoReconnect = True Local $bSuccess = $oRest.Connect("chilkatdownload.com",$iPort,$bTls,$bAutoReconnect) ; Send the request to download a file. $bSuccess = $oRest.SendReqNoBody("GET","/9.5.0.83/chilkat-9.5.0-python-3.8-x64.zip") If ($bSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ; Read the response header. Local $iResponseStatusCode = $oRest.ReadResponseHeader() If ($iResponseStatusCode < 0) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ConsoleWrite("Response status code = " & $iResponseStatusCode & @CRLF) ; 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) Then Local $sErrResponse = $oRest.ReadRespBodyString() If ($oRest.LastMethodSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Else ConsoleWrite($sErrResponse & @CRLF) EndIf Exit EndIf ; Create an object for decrypting. ; This example will use "none" for the encryption algorithm, which means it's just a pass-through. ; Typically you would set the decrypt properties, such as secret key, IV, key length, padding scheme, cipher mode.. $oCrypt = ObjCreate("Chilkat.Crypt2") $oCrypt.CryptAlgorithm = "none" ; The following settings are ignored in this test because our CryptAlgorithm is "none". ; However, if you were truly decrypting, you might set CryptAlgorithm = "aes". $oCrypt.CipherMode = "cbc" $oCrypt.KeyLength = 128 $oCrypt.SetEncodedKey "000102030405060708090A0B0C0D0E0F","hex" $oCrypt.SetEncodedIV "000102030405060708090A0B0C0D0E0F","hex" $oReceiveStream = ObjCreate("Chilkat.Stream") ; The decryptStream's source will be the receiveStream. $oDecryptStream = ObjCreate("Chilkat.Stream") ; The decrypt stream's sink will be a file. $oDecryptStream.SinkFile = "qa_output/chilkat-9.5.0-python-3.8-x64.zip" $oDecryptStream.SetSourceStream($oReceiveStream) ; Create and run a background async task to decrypt incoming data and write to a file. Local $oDecryptStreamTask = $oCrypt.DecryptStreamAsync($oDecryptStream) $bSuccess = $oDecryptStreamTask.Run() $bSuccess = $oRest.ReadRespBodyStream($oReceiveStream,True) If ($bSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ConsoleWrite("Successfully received the .zip file." & @CRLF) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.