REQUEST_DENIED响应Google Places API请求(sensor = true)

我正在尝试使用Google Places API获取我的位置周围的地点。

以下是用于search地点的URL的代码。

NSString *URL = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522,151.1957362&radius=500&sensor=true&key=0dp-j3dkCU_YUb97RHcbL5shmRrJ5R2y4bYz1Vw"]; NSMutableURLRequest *request = [[NSMutableURLRequest alloc]initWithURL:[NSURL URLWithString:URL] cachePolicy: NSURLRequestReloadIgnoringLocalCacheData timeoutInterval: 4]; [request setValue:@"application/json" forHTTPHeaderField:@"accept"]; NSObject *id1 = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES]; 

以JSON格式给我下面的响应。

 { "html_attributions" : [], "results" : [], "status" : "REQUEST_DENIED" } 

在searchGoogle Places API时,它说错误的传感器参数值是“REQUEST_DENIED”的一般原因。 但是,就我而言,我也提供这个,正确的。

任何想法,我哪里错了?

再次,我使用的APIKey是常见的应用程序开发Android,iPhone和黑莓。 那有效吗? 或者,我需要另一个APIKey(特定于我的iPhone应用程序)? 所以,另一个问题是, 我可以在所有三个平台上使用相同的密钥?

我把你的url代替了我所知道的关键字,并得到了预期的结果。 乍一看,我猜测你的密钥是不正确的复制/粘贴的,或者你没有在API控制台中启用与这个密钥关联的项目的Places API。

需要注意的是,每个项目都可以启用不同的服务,而且您必须手动为每个项目启用Places API,您是否可以确认它已在控制台中启用,并且密钥是否被准确复制?

如果您缺less必需的参数,也会出现此错误消息。

例如,我刚刚使用Places API的/autocomplete端点有类似的问题。

发送请求到https://maps.googleapis.com/maps/api/place/autocomplete/json?key=XXXXXXXXXXXXXXXXXX&input=San ,我得到这样的回应:

 { "predictions" : [], "status" : "REQUEST_DENIED" } 

即使它看起来像一个权限问题(至less对我来说),事实certificate,我只是缺less一个必要的sensor参数。