Sample code for 30+ languages & platforms
Swift Requires Chilkat v11.0.0+

Example: Http.HttpReq method

Demonstrates how to call the HttpReq method.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    let http = CkoHttp()!
    success = false

    //  This example will send an HTTP POST with the body of the HTTP request containing JSON.

    //  Create the following JSON: { "name": "Harry", "state": "FL" }

    let json = CkoJsonObject()!
    json.updateString(jsonPath: "name", value: "Harry")
    json.updateString(jsonPath: "state", value: "FL")

    //  Specify the details of the request
    let req = CkoHttpRequest()!

    req.httpVerb = "POST"
    req.contentType = "application/json"
    req.loadBody(fromString: json.emit(), charset: "utf-8")

    //  Send the charset attribute in the HTTP request header.
    req.sendCharset = true
    req.charset = "utf-8"

    //  Send the POST
    //  You can send the POST to the URL below.  
    //  The response will contain the raw body of the request that was sent.
    //  (i.e. everything except the HTTP request header).

    let resp = CkoHttpResponse()!
    success = http.httpReq(url: "https://www.chilkatsoft.com/echo_request_body.asp", request: req, response: resp)
    if success == false {
        print("\(http.lastErrorText!)")
        return
    }

    //  Examine the HTTP request header we sent:
    print("\(http.lastHeader!)")

    //  The response body contains the raw content of the HTTP request body we sent.
    print("\(resp.bodyStr!)")

    //  Sample output:

    //  POST /echo_request_body.asp HTTP/1.1
    //  Host: www.chilkatsoft.com
    //  Content-Type: application/json; charset=utf-8
    //  Content-Length: 29
    //  
    //  
    //  {"name":"Harry","state":"FL"}

}