无法使用生成的密钥访问Google Places API

时间:2014-05-04 09:37:56

标签: ios google-places-api google-places

我使用谷歌的控制台为我的项目生成了一个API密钥。然后正如他们在文档中提到的那样,我在AppDelegate方法的应用程序didFinishLaunchingWithOptions中添加了密钥。以下代码:

[GMSServices provideAPIKey:@"{MY_API_KEY}"];

然后我使用以下代码从我的ViewController中发送Google Places Auto完成请求:

NSMutableURLRequest *request = [[NSMutableURLRequest alloc]
                                    initWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/autocomplete/json?input=%@&sensor=false&key={MY_API_KEY}",searchString]]
                                    cachePolicy:NSURLRequestUseProtocolCachePolicy
                                    timeoutInterval:120];
    placesListConnection = [NSURLConnection connectionWithRequest:request delegate:self];

我收到以下回复:

{
   "error_message" : "This IP, site or mobile application is not authorized to use this API key.",
   "predictions" : [],
   "status" : "REQUEST_DENIED"
}

我在这里做错了什么?如何纠正这个?

2 个答案:

答案 0 :(得分:1)

终于解决了这个问题。我没有为IOS使用API_KEY,而是为网络创建了一个API_KEY,不需要引荐来源,然后使用该密钥发送请求。现在它工作得很好。

答案 1 :(得分:0)

您检查过Developers Console吗?是否在API和API下启用了Places API auth>的API?