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
(Swift 3,4,5...) HTTP POST with XML BodyDemonstrates sending an HTTP POST with a XML body. For more information, see https://chilkatsoft.com/http_post_with_xml_body.asp
func chilkatTest() { // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. let http = CkoHttp()! var success: Bool // Implements the following CURL command: // curl -X POST https://example.com/StockQuote \ // -H "Host: www.example.org" \ // -H "Content-Type: application/soap+xml; charset=utf-8" \ // -H "SOAPAction: http://www.example.org/StockPrice" \ // -d '<?xml version="1.0"?> // // <soap:Envelope // xmlns:soap="http://www.w3.org/2003/05/soap-envelope/" // soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding"> // // <soap:Body xmlns:m="http://www.example.org/stock"> // <m:GetStockPrice> // <m:StockName>IBM</m:StockName> // </m:GetStockPrice> // </soap:Body> // // </soap:Envelope>' // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code // Use this online tool to generate code from sample XML: // Generate Code to Create XML // -------------------------------------------------------------------------------- // Also see Chilkat's Online WSDL Code Generator // to generate code and SOAP Request and Response XML for each operation in a WSDL. // -------------------------------------------------------------------------------- // The following XML is sent in the request body. // <?xml version="1.0" encoding="utf-8"?> // <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope/" soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding"> // <soap:Body xmlns:m="http://www.example.org/stock"> // <m:GetStockPrice> // <m:StockName>IBM</m:StockName> // </m:GetStockPrice> // </soap:Body> // </soap:Envelope> // let xml = CkoXml()! xml.tag = "soap:Envelope" xml.addAttribute("xmlns:soap", value: "http://www.w3.org/2003/05/soap-envelope/") xml.addAttribute("soap:encodingStyle", value: "http://www.w3.org/2003/05/soap-encoding") xml.updateAttr(at: "soap:Body", autoCreate: true, attrName: "xmlns:m", attrValue: "http://www.example.org/stock") xml.updateChildContent("soap:Body|m:GetStockPrice|m:StockName", value: "IBM") http.setRequestHeader("SOAPAction", value: "http://www.example.org/StockPrice") http.setRequestHeader("Host", value: "www.example.org") http.setRequestHeader("Content-Type", value: "application/soap+xml; charset=utf-8") let sbRequestBody = CkoStringBuilder()! xml.getSb(sbRequestBody) var resp: CkoHttpResponse? = http.pTextSb("POST", url: "https://example.com/StockQuote", textData: sbRequestBody, charset: "utf-8", contentType: "application/soap+xml; charset=utf-8", md5: false, gzip: false) if http.lastMethodSuccess == false { print("\(http.lastErrorText!)") return } print("\(resp!.statusCode.intValue)") print("\(resp!.bodyStr!)") resp = nil } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.