Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS Build a Weather App with Swift (Retired) Pulling Data From the Web Fetching JSON Data

Edwin Mhoy Silva Rifa
Edwin Mhoy Silva Rifa
2,631 Points

NSdate problem

Let's assume that the courseURL we created earlier returns some JSON data from Treehouse API. Create a data object to capture this information, and store it in a constant named courseData. Hint: Use the NSData class. You can set options and error to nil.

students_code.swift
import Foundation
let treehouseBaseURL = NSURL(string: "https://api.teamtreehouse.com/")
let courseURL = NSURL(string: "/course/\(courseID)", relativeToURL: treehouseBaseURL)

let courseData = NSData.dataWithContentsOfURL(string: courseURL,options: nil, error: nil) 

4 Answers

Stone Preston
Stone Preston
42,016 Points

you need to use

let courseData = NSData(contentsOfURL: courseURL,options: nil, error: nil)

not

let courseData = NSData.dataWithContentsOfURL(string: courseURL,options: nil, error: nil)

see the documentation on the initializer

Edwin Mhoy Silva Rifa
Edwin Mhoy Silva Rifa
2,631 Points

Okay thank you very much.

I tried to find the answer in the swift manual, but couldn't find it.

  • Du you know how to find answers another time if needed :) ?
Stone Preston
Stone Preston
42,016 Points

i usually just google it : )

Stone Preston
Stone Preston
42,016 Points

well I didnt use google on this one. I checked the teacher's notes of this video. it shows that the change was made to the NSData initializer in 6.1 and that you need to use NSData(contentsOfURL: url, options: nil, error: nil) now