Sample code for 30+ languages & platforms
Swift

Send a REST Request using StringBuilder Bodies

See more REST Examples

Demonstrates Rest.FullRequestSb, which sends a complete request whose text body is read from a StringBuilder and stores the text response body in a second StringBuilder.

Background. Using StringBuilder objects for the request and response bodies avoids extra string conversions, which is helpful when working with large payloads.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    let rest = CkoRest()!
    var bTls: Bool = true
    var bAutoReconnect: Bool = true
    success = rest.connect(hostname: "example.com", port: 443, tls: bTls, autoReconnect: bAutoReconnect)
    if success == false {
        print("\(rest.lastErrorText!)")
        return
    }

    //  FullRequestSb sends a request whose text body is read from a StringBuilder and stores the text
    //  response body in a second StringBuilder.  This avoids extra string conversions for large bodies.
    let sbRequest = CkoStringBuilder()!
    sbRequest.append(value: "{ \"query\": \"chilkat\" }")

    rest.addHeader(name: "Content-Type", value: "application/json")

    let sbResponse = CkoStringBuilder()!
    success = rest.fullRequestSb(httpVerb: "POST", uriPath: "/api/search", requestBody: sbRequest, responseBody: sbResponse)
    if success == false {
        print("\(rest.lastErrorText!)")
        return
    }

    var responseText: String? = sbResponse.getAsString()
    if sbResponse.lastMethodSuccess == false {
        print("\(sbResponse.lastErrorText!)")
        return
    }

    print("\(responseText!)")

}