OpenGraph is a Swift wrapper for the OGP (Open Graph protocol).
You can fetch OpenGraph,then you can access the attributes with subscript and the key provided by enum type.
OpenGraph.fetch(url){ og, error inprint(og?[.title]) // => og:title of the web site
print(og?[.type]) // => og:type of the web site
print(og?[.image]) // => og:image of the web site
print(og?[.url]) // => og:url of the web site
}If you want to use Rx interface, use an extension below.
extensionOpenGraph{staticfunc rx_fetch(url:URL?)->Observable<OpenGraph?>{returnObservable.create{ observer inguardlet url = url else{
observer.onCompleted()returnDisposables.create()}OpenGraph.fetch(url: url){ og, err iniflet og = og {
observer.onNext(og)}iflet err = err {
observer.onError(err)}
observer.onCompleted()}returnDisposables.create()}}}- Xcode 9 / Swift 4.0 or 3.2 (If you use Xcode 8.x, you can use 1.0.2.)
- iOS 8.0 or later
- macOS 10.9 or later
- tvOS 9.0 or later
- watchOS 2.0 or later
If you use Swift 2.2 or 2.3, use older version of OpenGraph.
Insert pod 'OpenGraph' to your Podfile and run pod install.
Insert github "satoshi-takano/OpenGraph" to your Cartfile and run carthage update.
This project and library has been created by Satoshi Takano and is under the MIT License.
