Swift
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
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!)")
}