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
(Tcl) Client Certificate in RESTDemonstrates how to use a client certificate with a REST connection.
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # This example shows how to use the Chilkat socket object's connection. set rest [new_CkRest] set socket [new_CkSocket] # Set the certificate to be used for mutual TLS authentication # (i.e. sets the client-side certificate for two-way TLS authentication) # Note: There are other ways to set the client certificate using Chilkat. # For example, on Windows systems, a Chilkat certificate object could be loaded with certificate # pre-installed (with private key) in a Windows certificate store, and then socket.SetSslClientCert could be called. set success [CkSocket_SetSslClientCertPfx $socket "/home/bob/pfxFiles/myClientSideCertWithPrivateKey.pfx" "pfxPassword"] if {$success != 1} then { puts [CkSocket_lastErrorText $socket] delete_CkRest $rest delete_CkSocket $socket exit } # Note: The certificate used for the client-side of TLS mutual authentication # must have the associated private key available. (.pfx/.p12 files typically store both # the certificate and associated private key.) # Establish the connection using the socket object (with client certificate authentication). set bTls 1 set port 443 set maxWaitMs 5000 set success [CkSocket_Connect $socket "www.example.com" $port $bTls $maxWaitMs] if {$success != 1} then { puts "Connect Failure Error Code: [CkSocket_get_ConnectFailReason $socket]" puts [CkSocket_lastErrorText $socket] delete_CkRest $rest delete_CkSocket $socket exit } set bAutoReconnect 1 # Use the connection: set success [CkRest_UseConnection $rest $socket $bAutoReconnect] if {$success != 1} then { puts [CkRest_lastErrorText $rest] delete_CkRest $rest delete_CkSocket $socket exit } # At this point we are connected and can make REST calls... # For example.. set responseJson [CkRest_fullRequestNoBody $rest "GET" "/someQuery"] if {[CkRest_get_LastMethodSuccess $rest] != 1} then { puts [CkRest_lastErrorText $rest] delete_CkRest $rest delete_CkSocket $socket exit } delete_CkRest $rest delete_CkSocket $socket |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.