You can use NSURL, NSURLRequest and NSURLSession or NSURLConnection as you'd normally do in Objective-C. Note that for iOS 7.0 and later, NSURLSession is preferred.
Using NSURLSession
Initialize an NSURL object and an NSURLSessionDataTask from NSURLSession. Then run the task with resume().
let url = NSURL(string: "http://www.rnbold.com")
let task = NSURLSession.sharedSession().dataTaskWithURL(url!) {(data, response, error) in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
}
task.resume()
Using NSURLConnection
First, initialize an NSURL and an NSURLRequest:
let url = NSURL(string: "http://www.rnbold.com")
let request = NSURLRequest(URL: url!)
Then, you can load the request asynchronously with:
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {(response, data, error) in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
Or you can initialize an NSURLConnection:
let connection = NSURLConnection(request: request, delegate:nil, startImmediately: true)
Just make sure to set your delegate to something other than nil and use the delegate methods to work with the response and data received.
For more detail, check the documentation for the NSURLConnectionDataDelegate protocol
Testing on an Xcode playground
If you want to try this code on a Xcode playground, add import XCPlayground to your playground, as well as the following call:
XCPSetExecutionShouldContinueIndefinitely()
This will allow you to use asynchronous code in playgrounds.
}