|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (Ruby) ABN AMRO OAuth2 Client Credentials AuthenticationDemonstrates how to obtain an access token for an ABN AMRO online API using OAuth2 with the Client Credentials flow. Note: This example requires Chilkat v11.0.0 or greater. For more information, see https://developer.abnamro.com/api/payment-initiation-v1/payment-initiation-tutorial 
 require 'chilkat' success = false # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # This example sends the following CURL request: # curl -X POST -k https://auth-sandbox.connect.abnamro.com:8443/as/token.oauth2 \ # -v \ # --cert TPPCertificate.crt \ # --key TPPprivateKey.key \ # -H 'Cache-Control: no-cache' \ # -H 'Content-Type: application/x-www-form-urlencoded' \ # -d 'grant_type=client_credentials&client_id=TPP_test&scope=psd2:payment:sepa:write psd2:payment:sepa:read' cert = Chilkat::CkCert.new() success = cert.LoadFromFile("qa_data/certs/TPPCertificate.cer") if (success == false) print cert.lastErrorText() + "\n"; exit end bdKey = Chilkat::CkBinData.new() success = bdKey.LoadFile("qa_data/certs/TPPprivateKey.key") privKey = Chilkat::CkPrivateKey.new() success = privKey.LoadAnyFormat(bdKey,"passwordIfNeeded") if (success == false) print privKey.lastErrorText() + "\n"; exit end success = cert.SetPrivateKey(privKey) if (success == false) print cert.lastErrorText() + "\n"; exit end http = Chilkat::CkHttp.new() success = http.SetSslClientCert(cert) if (success == false) print http.lastErrorText() + "\n"; exit end req = Chilkat::CkHttpRequest.new() req.AddParam("grant_type","client_credentials") req.AddParam("client_id","TPP_test") req.AddParam("scope","psd2:payment:sepa:write psd2:payment:sepa:read") req.put_HttpVerb("POST") req.put_ContentType("application/x-www-form-urlencoded") resp = Chilkat::CkHttpResponse.new() success = http.HttpReq("https://auth-sandbox.connect.abnamro.com:8443/as/token.oauth2",req,resp) if (success == false) print http.lastErrorText() + "\n"; exit end if (resp.get_StatusCode() != 200) print resp.bodyStr() + "\n"; exit end # Get the JSON result: # {"access_token":"TIhycwl8rfrZPkXGw15mwldASAAK","token_type":"Bearer","expires_in":7200} json = Chilkat::CkJsonObject.new() json.Load(resp.bodyStr()) print "access_token: " + json.stringOf("access_token") + "\n"; print "token_type: " + json.stringOf("token_type") + "\n"; print "expires_in: " + json.stringOf("expires_in") + "\n"; | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.