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) HttpPostJson2Async ExampleDemonstrates use of the HttpPostJson2Async method.
; This requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code ; See PostJson2 Example for the synchronous equivalent of this example. $oHttp = ObjCreate("Chilkat.Http") Local $bSuccess ; Sends a POST equivalent to the following CURL command: ; curl -X POST https://sandbox.plaid.com/institutions/get \ ; -H 'content-type: application/json' \ ; -d '{ ; "client_id": String, ; "secret":String, ; "count": Number, ; "offset": Number ; }' ; Suppress some default headers that would automatically added.. $oHttp.AcceptCharset = "" $oHttp.UserAgent = "" $oHttp.AcceptLanguage = "" $oHttp.AllowGzip = False Local $sJsonBody = "{""client_id"": ""PLAID_CLIENT_ID"", ""secret"":""PLAID_SECRET"", ""count"": 10, ""offset"": 0}" Local $oTask = $oHttp.PostJson2Async("https://sandbox.plaid.com/institutions/get","application/json",$sJsonBody) If ($oHttp.LastMethodSuccess = False) Then ConsoleWrite($oHttp.LastErrorText & @CRLF) Exit EndIf ; Start the background task. $bSuccess = $oTask.Run() If (Not $bSuccess) Then ConsoleWrite($oTask.LastErrorText & @CRLF) Exit EndIf ; The application is now free to do anything else ; while the HTTP POST is in progress ; For this example, we'll simply sleep and periodically ; check to see if the HTTP POST is finished. While $oTask.Finished <> True ; Sleep 100 ms. $oTask.SleepMs 100 Wend ; When we get here, the task is either finished successfully or not, or was canceled/aborted. ; If the task was "canceled", it was canceled prior to actually starting. This could ; happen if the task was canceled while waiting in a thread pool queue to be scheduled by Chilkat's ; background thread pool scheduler. ; If the task was "aborted", it indicates that it was canceled while running in a background thread. ; The ResultErrorText will likely indicate that the task was aborted. ; If the task "completed", then it ran to completion, but the actual success/failure of the method ; is determined by getting the result of the underlying method call. ; A task status of 7 indicates completion. If ($oTask.StatusInt <> 7) Then ConsoleWrite("Task did not complete." & @CRLF) ConsoleWrite("task status: " & $oTask.Status & @CRLF) Exit EndIf ; When called synchronously, the PostJson2 method returns an HTTP response object, ; unless the method failed and there was no response to be had. ; Check to see if PostJson2 method failed (and thus there is no response object). If ($oTask.TaskSuccess = False) Then ConsoleWrite("The underlying task failed, and there is no HTTP response object." & @CRLF) ConsoleWrite("The LastErrorText for the underlying method call is:" & @CRLF) ConsoleWrite($oTask.ResultErrorText & @CRLF) Exit EndIf ; To get the HTTP response object, create a new instance and load it with the result from the task. $oResp = ObjCreate("Chilkat.HttpResponse") $oResp.LoadTaskResult($oTask) Local $iStatusCode = $oResp.StatusCode ConsoleWrite("Response status code = " & $iStatusCode & @CRLF) ; Examine the JSON response.. $oJson = ObjCreate("Chilkat.JsonObject") $oJson.Load($oResp.BodyStr) $oJson.EmitCompact = False ConsoleWrite("JSON Response Body:" & @CRLF) ConsoleWrite($oJson.Emit() & @CRLF) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.