Last week, we released an update to our Beginning Core Data course, to get you started saving data on-device. Today, I’m excited to announce an update to my Networking with URLSession course to help you manage data online!
This 13-video course will introduce you to URLSession, Apple’s networking API. You’ll learn when and how to use data, how to work with download and upload tasks (with or without a custom session delegate), and how the system manages background sessions. Additionally, you’ll keep your users’ data safe with authentication and App Transport Security, and pick up tips for networking architecture, testing, and metrics. This course is fully updated for iOS 11 and Swift 4.
Let’s have a look at what’s inside.
- Introduction: Find out what’s covered in our video course Networking with URLSession.
- HTTP 101: Learn some HTTP basics to make the most of URLSession, and discover the easy way to create URL objects from Strings.
- URLSession: The URLSession API has many moving parts: learn about URLSessionConfigurations, URLSessionTasks and delegates, and how they fit together.
- URLSession Cookbook 1: Learn about REST and JSON, then create a URLSession data task that makes a GET request on a REST API, and parses the JSON URLResponse.
- URLSession Cookbook 2: Learn about URLRequest and HTTP headers, then create a URLSessionDataTask to POST to a REST API. Also build an Alamofire-inspired PostRouter to create URLRequests.
- Download & Upload Task: Learn about URLSessionDownloadTask and URLSessionUploadTask to save results to a file, or upload a data object or a file.
- Background Sessions: Download and upload tasks can run in a background session. Find out how the system handles this, and learn some advice and tips for long-running tasks.
- Authentication: Learn how to handle authentication and cookies.
- ATS: Learn what your app needs to do, to support Apple’s requirement for App Transport Security.
- OperationQueue: URLSession is an OperationQueue, and delegate and completion methods run on another OperationQueue: learn how to customize the delegate queue.
- Architecture: MVC shouldn’t mean Massive View Controller: learn some ways to move networking code out of the view controller, and how to wrap a session task in an Operation.
- Testing & Metrics: Writing unit tests is A Good Thing: learn how to test asynchronous network code. And find out how to access URLSessionTaskMetrics transaction data.
- Conclusion: Review what you’ve learned in this video course, and get a TODO list for discussions with your back-end server team.
Where To Go From Here?
The rest of the course is for raywenderlich.com subscribers only. Here’s how you can get access:
- If you are a raywenderlich.com subscriber: The entire course is complete and available today. You can check out the course here.
- If you are not a subscriber yet: What are you waiting for? Subscribe now to get access to our updated Networking with URLSession course and our entire catalog of over 500 videos.
Stay tuned for more new and updated iOS 11 courses to come. I hope you enjoy the course! :]