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) GeoOp Exchange Refresh Token for New Access TokenDemonstrates how to use the /oauth2/token endpoint to exchange it for a new access token once the current access token has expired. Note: This example requires Chilkat v9.5.0.65 or greater.
; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; This example also assumes that OAuth2 access and refresh tokens were previously fetched. ; and saved in a JSON file. ; First get our previously obtained refresh token. ; { .... "refresh_token":"e6dqdG....mzjpT04w==", .... } $oJsonToken = ObjCreate("Chilkat.JsonObject") Local $bSuccess = $oJsonToken.LoadFile("qa_data/tokens/geoop.json") $oRest = ObjCreate("Chilkat.Rest") ; Connect to GeoOp... Local $bAutoReconnect = True $bSuccess = $oRest.Connect("login.geoop.com",443,True,$bAutoReconnect) If ($bSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ; Set the X-Version header. $oRest.AddHeader("X-Version","1.0") ; Provide the required form params to get the new access token ConsoleWrite("refresh_token = " & $oJsonToken.StringOf("refresh_token") & @CRLF) $oRest.AddQueryParam("refresh_token",$oJsonToken.StringOf("refresh_token")) $oRest.AddQueryParam("grant_type","refresh_token") $oRest.AddQueryParam("client_id","GEOOP-CLIENT-ID") $oRest.AddQueryParam("client_secret","GEOOP-CLIENT-SECRET") Local $sResponseBody = $oRest.FullRequestFormUrlEncoded("POST","/oauth2/token") If ($oRest.LastMethodSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ; If the response status code did not indicate success, then see what happened.. If ($oRest.ResponseStatusCode <> 200) Then ConsoleWrite("Request Header: " & @CRLF) ConsoleWrite($oRest.LastRequestHeader & @CRLF) ConsoleWrite("----" & @CRLF) ConsoleWrite("Response StatusCode = " & $oRest.ResponseStatusCode & @CRLF) ConsoleWrite("Response StatusLine: " & $oRest.ResponseStatusText & @CRLF) ConsoleWrite("Response Header:" & @CRLF) ConsoleWrite($oRest.ResponseHeader & @CRLF) ConsoleWrite($sResponseBody & @CRLF) Exit EndIf $oJson = ObjCreate("Chilkat.JsonObject") $oJson.EmitCompact = False $oJson.Load($sResponseBody) ; Show the full JSON response. It should contain the new access token... ConsoleWrite($oJson.Emit() & @CRLF) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.