Sample code for 30+ languages & platforms
Swift

Socket Convenience Method: BuildHttpGetRequest

See more Socket/SSL/TLS Examples

Demonstrates the BuildHttpGetRequest method.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    // The BuildHttpGetRequest method is a convenience method for building
    // an HTTP GET request.  Normally, an application would use Chilkat's HTTP or REST API's
    // for sending HTTP requests.  

    let socket = CkoSocket()!

    var url: String? = "http://www.chilkatsoft.com/test.asp?x=123&y=456"
    var reqStr: String? = socket.buildHttpGetRequest(url: url)
    print("\(reqStr!)")
    print("----")

    // The result is:

    // 	GET /test.asp?x=123&y=456 HTTP/1.1
    // 	Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    // 	Connection: keep-alive
    // 	User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0
    // 	Accept-Language: en-us,en;q=0.5
    // 	Host: www.chilkatsoft.com

    // The result is meant to look like a request from a browser.

    // The same thing can be done using the Url and HttpRequest classes, but with more flexibility.

    let req = CkoHttpRequest()!
    req.set(fromUrl: url)
    reqStr = req.generateRequestText()
    print("\(reqStr!)")
    print("----")

    // The result is:

    // 	GET /test.asp?x=123&y=456 HTTP/1.1
    // 	Host: domain

    // Add some headers..
    req.addHeader(name: "Host", value: "www.chilkatsoft.com")
    req.addHeader(name: "Accept-Language", value: "en-us,en;q=0.5")
    req.addHeader(name: "Some-Other-Header", value: "123456")

    reqStr = req.generateRequestText()
    print("\(reqStr!)")

    // The result is now:

    // 	GET /test.asp?x=123&y=456 HTTP/1.1
    // 	Host: www.chilkatsoft.com
    // 	Accept-Language: en-us,en;q=0.5
    // 	Some-Other-Header: 123456

}