Как использовать Yelp api v3 в swift - PullRequest
0 голосов
/ 30 мая 2018

Короче говоря, я хочу получить отзывы, изображения и т. Д. О местах и ​​добавить их на карту.Использование api v3 от Yelp казалось наилучшим способом сделать это, но у меня возникли проблемы с поиском достойной / обновленной / рабочей документации.

Я посмотрел здесь: https://github.com/codepath/ios_yelp_swift/tree/master/Yelp

, но он устарел (как версия api, так и swift)

Мне удалось найти этот обновленный документ.на v3: https://github.com/Yelp/yelp-fusion/tree/master/fusion/swift

, но код не работает.

Я также просматривал здесь почти все вопросы / ветки об API yelp, но большинство вопросов устарели или никогда не отвечали.

Но из моего понимания просмотра других вопросов, чтобы использоватьAPI, я должен создать запрос HTTP GET, изменить авторизацию и декодировать данные с помощью URL: https://api.yelp.com/v3 (но с моими желаемыми терминами и тому подобное), но документация, которую выдает yelp, не содержит ничего из этого?

У меня такой вопрос, может ли кто-нибудь предоставить полный пример (или ссылку) правильного использования API v3 в swift или дать некоторую ясность относительно того, как его использовать?

Буду признателен за любую помощь

Ответы [ 2 ]

0 голосов
/ 28 марта 2019

Потребовалось немного взломать, чтобы получить его.

    fileprivate func fetchYelpBusinesses(latitude: Double, longitude: Double) {
        let apikey = "YourAPIKey"
        let url = URL(string: "https://api.yelp.com/v3/businesses/search?latitude=\(latitude)&longitude=\(longitude)")
        var request = URLRequest(url: url!)
        request.setValue("Bearer \(apikey)", forHTTPHeaderField: "Authorization")
        request.httpMethod = "GET"

        URLSession.shared.dataTask(with: request) { (data, response, error) in
            if let err = error {
                print(err.localizedDescription)
            }
            do {
                let json = try JSONSerialization.jsonObject(with: data!, options: []) as! [String: Any]
                print(">>>>>", json, #line, "<<<<<<<<<")
            } catch {
                print("caught")
            }
            }.resume()
    }

0 голосов
/ 01 июня 2018

Для тех, кто хочет использовать API-интерфейс Yelp, но не может найти соответствующую документацию, я обнаружил, что вместо модуля «yelpapi» вы можете установить «CDYelpFusionKit».Он имеет гораздо больше документации и проще в использовании.

Ссылка на документацию: https://github.com/chrisdhaan/CDYelpFusionKit

...