Skip to content

Instantly share code, notes, and snippets.

@ianpartridge
Created March 23, 2018 09:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ianpartridge/0284961f5699e5fc5d9353ccc4d68a84 to your computer and use it in GitHub Desktop.
Save ianpartridge/0284961f5699e5fc5d9353ccc4d68a84 to your computer and use it in GitHub Desktop.
import Foundation
import PlaygroundSupport
struct Film: Decodable
{
let title: String
}
struct Films: Decodable
{
let count: Int
let results: [Film]
}
let session = URLSession(configuration: .default)
let filmsURL = URL(string: "https://swapi.co/api/films")!
let request = URLRequest(url: filmsURL)
let task = session.dataTask(with: request) { data, response, error in
guard error == nil, let data = data else {
return
}
let decoder = JSONDecoder()
do {
let films = try decoder.decode(Films.self, from: data)
print(films)
} catch let error {
print(error)
}
PlaygroundPage.current.finishExecution()
}
task.resume()
PlaygroundPage.current.needsIndefiniteExecution = true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment