Sample code for 30+ languages & platforms
Objective-C

Socket Convenience Method: BuildHttpGetRequest

See more Socket/SSL/TLS Examples

Demonstrates the BuildHttpGetRequest method.

Chilkat Objective-C Downloads

Objective-C
#import <CkoSocket.h>
#import <NSString.h>
#import <CkoHttpRequest.h>

// 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.  

CkoSocket *socket = [[CkoSocket alloc] init];

NSString *url = @"http://www.chilkatsoft.com/test.asp?x=123&y=456";
NSString *reqStr = [socket BuildHttpGetRequest: url];
NSLog(@"%@",reqStr);
NSLog(@"%@",@"----");

// 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.

CkoHttpRequest *req = [[CkoHttpRequest alloc] init];
[req SetFromUrl: url];
reqStr = [req GenerateRequestText];
NSLog(@"%@",reqStr);
NSLog(@"%@",@"----");

// The result is:

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

// Add some headers..
[req AddHeader: @"Host" value: @"www.chilkatsoft.com"];
[req AddHeader: @"Accept-Language" value: @"en-us,en;q=0.5"];
[req AddHeader: @"Some-Other-Header" value: @"123456"];

reqStr = [req GenerateRequestText];
NSLog(@"%@",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