Google地方信息的Google API主要问题

时间:2016-01-22 20:44:03

标签: ios swift google-places-api nsjsonserialization

我正在开发一个应用,我需要从google places API查询地点,并将最近的地方保存到用户的Google帐户(他们通过GIDSignIN登录应用)。 Places API在控制台中激活,它们的键是正确的,但是,URL可能有问题,我一直收到此错误......

  

可选([“error_message”:此IP,网站或移动应用程序不是   授权使用此API密钥。从IP地址收到的请求   2607:f598:b349:fd01:94f8:7386:d82c:1b29,空的引用者,   “结果”:(),“状态”:REQUEST_DENIED,“html_attributions”:()])

调用API的方法,当前lat和on long来自位置管理器(工作正常)

func saveCurrentLocation() {

    //API CALL

    let latString = String(currentLat)
    let longString = String(currentLong)

    let apiString = NSString(format: "https://maps.googleapis.com/maps/api/place/search/json?location=%f,%f&radius=500&types=food&sensor=true&key=AIzaSyDH0jNx1WJw0pkCzbc0xaHumDoDAYYWvtk", latString, longString)

    let url = NSURL(string: apiString as String)

    let session = NSURLSession.sharedSession()

    let dataTask = session.dataTaskWithURL(url!) { (data, response, error) -> Void in

        if let urlContent = data {

            do {

                let jsonDictionary = try NSJSONSerialization.JSONObjectWithData(urlContent, options: NSJSONReadingOptions.AllowFragments) as? [String:AnyObject]
                print(jsonDictionary)

            }

            catch {
                print("JSON error")
            }
        }
    }

    dataTask.resume()

}

任何人都可以提供帮助吗?谢谢!

1 个答案:

答案 0 :(得分:2)

当您未在Google控制台上启用Api时,通常会出现此类错误。因此,请在控制台上启用Api启用。