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
(Java) Okta: Use the Resource Owner Password FlowDemonstrates how to get an access token using the Resource Owner Password Flow. For more information, see https://developer.okta.com/docs/guides/implement-password/use-flow/
import com.chilkatsoft.*; public class ChilkatExample { static { try { System.loadLibrary("chilkat"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load.\n" + e); System.exit(1); } } public static void main(String argv[]) { // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkHttp http = new CkHttp(); boolean success; // Implements the following CURL command: // curl --request POST \ // --url https://{yourOktaDomain}/oauth2/default/v1/token \ // --header 'accept: application/json' \ // --user "client_id:client_secret" \ // --header 'content-type: application/x-www-form-urlencoded' \ // --data 'grant_type=password&username=myUserEmail&password=myPassword&scope=openid' http.put_Login("client_id"); http.put_Password("client_secret"); CkHttpRequest req = new CkHttpRequest(); req.put_HttpVerb("POST"); req.put_Path("/oauth2/default/v1/token"); req.put_ContentType("application/x-www-form-urlencoded"); req.AddParam("grant_type","password"); req.AddParam("username","myUserEmail"); req.AddParam("password","myPassword"); req.AddParam("scope","openid"); req.AddHeader("accept","application/json"); CkHttpResponse resp = http.PostUrlEncoded("https://{yourOktaDomain}/oauth2/default/v1/token",req); if (http.get_LastMethodSuccess() == false) { System.out.println(http.lastErrorText()); return; } CkStringBuilder sbResponseBody = new CkStringBuilder(); resp.GetBodySb(sbResponseBody); CkJsonObject jResp = new CkJsonObject(); jResp.LoadSb(sbResponseBody); jResp.put_EmitCompact(false); System.out.println("Response Body:"); System.out.println(jResp.emit()); int respStatusCode = resp.get_StatusCode(); System.out.println("Response Status Code = " + respStatusCode); if (respStatusCode >= 400) { System.out.println("Response Header:"); System.out.println(resp.header()); System.out.println("Failed."); return; } // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "access_token": "eyJraWQiOi ... jmiHD7wY9_gQ", // "token_type": "Bearer", // "expires_in": 3600, // "scope": "openid", // "id_token": "eyJraWQiOiJ ... W7KkWiPJnUSMoGw" // } // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON String access_token = jResp.stringOf("access_token"); String token_type = jResp.stringOf("token_type"); int expires_in = jResp.IntOf("expires_in"); String scope = jResp.stringOf("scope"); String id_token = jResp.stringOf("id_token"); } } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.