使用URLEmbeddedView获取OG数据

时间:2016-08-11 09:53:18

标签: swift github

所以我试图从网站上获取开放图表数据。幸运的是我找到了URLEmbeddedView,但我遇到了问题。 我把它添加到我的pod并安装它,但据我所知它不会取任何东西。

在git示例中有效:

-v

}

在我的例子中,为了理解它并使其正常工作,我将其剪切了很多:

extension OGSampleViewController: UISearchBarDelegate {
func searchBarSearchButtonClicked(searchBar: UISearchBar) {
    guard let urlString = searchBar.text else { return }
    print(urlString)
    embeddedView.loadURL(urlString) {
        if let _ = $0 {
            return
        }
        OGDataProvider.sharedInstance.fetchOGData(urlString: urlString) { [weak self] ogData, error in
            if let _ = error {
                return
            }
            let text = "- sourceUrl        = \(ogData.sourceUrl)\n"
                + "- url              = \(ogData.url)\n"
                + "- siteName         = \(ogData.siteName)\n"
                + "- pageTitle        = \(ogData.pageTitle)\n"
                + "- pageType         = \(ogData.pageType)\n"
                + "- pageDescription  = \(ogData.pageDescription)\n"
                + "- imageUrl         = \(ogData.imageUrl)\n"
                + "- createDate       = \(ogData.createDate)\n"
                + "- updateDate       = \(ogData.updateDate)\n"
            dispatch_async(dispatch_get_main_queue()) {
                self?.textView.text = text
            }
        }
    }
}

textView的结果是:

nothing

我对Swift相当新,所以我的问题是,这是否是使用提供商的正确方法?编译时我没有收到任何错误,但显然使用它时出现了问题。

2 个答案:

答案 0 :(得分:1)

在URLEmbeddedView中存在类OGData,您的代码看起来像是要使用它。只需将您的变量重命名为示例 ​​- ogData即可。试试这个:

import URLEmbeddedView

class LinksViewController: UIViewController, UITableViewDelegate {

    let urlString = "https://google.com/"

    OGDataProvider.sharedInstance.fetchOGData(urlString: urlString) { [weak self] ogData, error in
            if let _ = error {
                return
            }

        let text = "- pageTitle = \(ogData.pageTitle)\n"

        dispatch_async(dispatch_get_main_queue()) {
            self?.textView.text = text
        }
    }
}

答案 1 :(得分:1)

好吧,它实际上是在原理上工作,而不是上面第一个代码示例中的pageTitle和一些其他参数。我刚刚为所有参数检查了相同的代码,其中一些只是一无所获:

enter image description here