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
(PureBasic) Check PayPal Access Token ExpirationChecks to see if the PayPal access token expired.
IncludeFile "CkDateTime.pb" IncludeFile "CkJsonObject.pb" Procedure ChilkatExample() ; Note: Requires Chilkat v9.5.0.64 or greater. ; This requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; In the example linked here: PayPal OAuth2 Token, ; we fetched a PayPal access token and saved it to a JSON file. ; We also recorded the current date/time. ; Load this JSON file and compare the current date/time with the fetch date/time ; and the "expires_in" value to see if the token is expired. json.i = CkJsonObject::ckCreate() If json.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkJsonObject::ckLoadFile(json,"qa_data/tokens/paypal.json") If success <> 1 Debug "Failed to load access key json file." CkJsonObject::ckDispose(json) ProcedureReturn EndIf ; Get the current date/time. dateTime.i = CkDateTime::ckCreate() If dateTime.i = 0 Debug "Failed to create object." ProcedureReturn EndIf bLocalTime.i = 0 dtNow.i = CkDateTime::ckGetAsUnixTime(dateTime,bLocalTime) ; Get the access token create date/time dtCreate.i = CkJsonObject::ckIntOf(json,"tokenCreateTimeUtc") ; Find out how many seconds have elapsed. numSeconds.i = dtNow - dtCreate ; Get the expires_in value from the JSON. expires_in.i = CkJsonObject::ckIntOf(json,"expires_in") Debug "token age (in seconds) = " + Str(numSeconds) Debug "expires_in = " + Str(expires_in) ; If the token expired, or if it will expire in 5 minutes or less, ; get another token. If numSeconds < (expires_in - 300) Debug "The token is not yet expired. No need to fetch another." CkJsonObject::ckDispose(json) CkDateTime::ckDispose(dateTime) ProcedureReturn EndIf Debug "Time to fetch a new access token..." ; Get another token.. ; See the example at Get PayPal OAuth2 Token ; to get another token.. CkJsonObject::ckDispose(json) CkDateTime::ckDispose(dateTime) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.