JSONFeed
Swift parsing for JSON Feed Spec
Installation
Carthage
You can install Carthage with Homebrew using the following command:
brew update
brew install carthage
To integrate JSONFeed into your Xcode project using Carthage, specify it in your Cartfile
where "x.x.x"
is the current release:
github "wesbillman/JSONFeed" "x.x.x"
Swift Package Manager
To install using Swift Package Manager have your Swift package set up, and add JSONFeed as a dependency to your Package.swift
.
dependencies: [
.Package(url: "https://github.com/wesbillman/JSONFeed.git", majorVersion: 0)
]
Manually
Add all the files from JSONFeed/JSONFeed
to your project
Usage
See JSONFeedTests for detailed usage examples
Load a feed from a dictionary
let dictionary = <some feed dictionary>
let feed = try? JSONFeed(json: dictionary)
Load a feed from data
let data = <some feed data>
let feed = try? JSONFeed(data: data)
Load a feed from a json ut8f string
let string = <some utf8 json string>
let feed = try? JSONFeed(string: string)
Reading from a feed via URLSession
Using default configuration and URLSession
let reader = JSONFeedReader()
reader.read(string: "https://jsonfeed.org/feed.json") { (feed, error) in
if let error = error {
//bad things happened
}
if let feed = feed {
//good things happened
}
}
Using custom implemenation of URLSession (example: for unit testing)
let reader = JSONFeedReader(session: SomeCustomURLSession)
reader.read(string: "https://jsonfeed.org/feed.json") { (feed, error) in
if let error = error {
//bad things happened
}
if let feed = feed {
//good things happened
}
}