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
(Ruby) SOAP Request to fseservicetest.sanita.finanze.it with Smart Card Authentication (TS-CNS Italian Card)Demonstrates sending a SOAP request to fseservicetest.sanita.finanze.it with Smart Card (TS-CNS Italian Card).
require 'chilkat' # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. http = Chilkat::CkHttp.new() xml = Chilkat::CkXml.new() success = false # -------------------------------------------------------------------------------- # Also see Chilkat's Online WSDL Code Generator # to generate code and SOAP Request and Response XML for each operation in a WSDL. # -------------------------------------------------------------------------------- # Create the SOAP envelope... xml.put_Tag("soapenv:Envelope") xml.AddAttribute("xmlns:soapenv","http://schemas.xmlsoap.org/soap/envelope/") xml.AddAttribute("xmlns:stat","http://statoconsensirichiesta.xsd.fse.ini.finanze.it") xml.AddAttribute("xmlns:tip","http://tipodatistatoconsensi.xsd.fse.ini.finanze.it") xml.UpdateChildContent("soapenv:Header","") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:IdentificativoUtente","XXXXXXAAABBBCCC") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:pinCode","...") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:IdentificativoOrganizzazione","999") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:StrutturaUtente","123456789") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:RuoloUtente","ZZZ") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:ContestoOperativo","") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:IdentificativoAssistitoGenitoreTutore","") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:PresaInCarico","true") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:TipoAttivita","READ") xml.UpdateChildContent("soapenv:Body|stat:StatoConsensiRichiesta|stat:IdentificativoAssistitoConsenso","ABCDEFGHIJKLM") soapEnvelope = xml.getXml() domain = "fseservicetest.sanita.finanze.it" path = "/FseInsServicesWeb/services/fseStatoConsensi" req = Chilkat::CkHttpRequest.new() req.put_HttpVerb("POST") req.put_SendCharset(false) req.AddHeader("Content-Type","application/soap+xml; charset=utf-8") req.put_Path(path) success = req.LoadBodyFromString(soapEnvelope,"utf-8") # Load the default certificate from the smartcard currently in the reader. # (This assumes only one reader with one smartcard containing one certificate. # If the situation is more complex, you can do it with Chilkat, but it requires # using the Chilkat certificate store object to get the desired certificate # from the desired smart card.) # # Note: This is for Windows-only. cert = Chilkat::CkCert.new() success = cert.LoadFromSmartcard("") if (success == false) print cert.lastErrorText() + "\n"; exit end # Tell the Chilkat HTTP object to use the certificate for client authentication. success = http.SetSslClientCert(cert) if (success == false) print http.lastErrorText() + "\n"; exit end http.put_TlsVersion("TLS 1.1") # resp is a CkHttpResponse resp = http.SynchronousRequest(domain,443,true,req) if (http.get_LastMethodSuccess() == false) print http.lastErrorText() + "\n"; exit end xmlResp = Chilkat::CkXml.new() success = xmlResp.LoadXml(resp.bodyStr()) print xmlResp.getXml() + "\n"; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.