【问题标题】:REQUEST_DENIED in responce of Google Places API Request (sensor=true)响应 Google Places API 请求的 REQUEST_DENIED (sensor=true)
【发布时间】:2012-02-08 14:59:01
【问题描述】:

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

以下是用于点击 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"
}

在搜索 Google Places API 时,它说,不正确的 sensor 参数值是“REQUEST_DENIED”的一般原因。但是,就我而言,我提供的也是正确的。

知道我哪里错了吗??

同样,我使用的 APIKey 对于在 Android、iPhone 和 BlackBerry 上开发的应用程序来说是通用的。那有效吗?或者,我是否需要另一个 APIKey(特定于我的 iPhone 应用程序)?那么,另一个问题是,我可以在所有三个平台上使用相同的密钥吗??

【问题讨论】:

  • 我想我会发表评论,让您知道有人听到了您的请求!我尝试了文档 maps.googleapis.com/maps/api/place/search/… 中的 url,这也给出了 REQUEST_DENIED。我尝试将您的 api 密钥替换为该 url 和同上 - 被拒绝。文档示例中唯一“缺少”的 url 是 &types 和 &name。我尝试了几乎所有我能想到的排列,但仍然被拒绝。
  • @Damo:感谢您的尝试。我感谢你的努力。 :)

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


【解决方案1】:

我获取了您的 URL 并替换了一个我知道有效的密钥,并得到了预期的结果。乍一看,我猜您复制/粘贴的密钥不正确,或者您没有在 API 控制台中为与此密钥关联的项目启用 Places API。

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

【讨论】:

  • API 控制台中未启用。现在,它工作正常。感谢您的宝贵时间。
  • @jlivni Google Places API 是否可以与原生 IOS 应用一起使用?
  • @Pranav 当然,这只是一个类似 REST 的 API——您可以从本地应用程序向 Places API 发出 http 请求,并解析结果以按照您认为合适的方式显示(在服务条款内) .
【解决方案2】:

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

例如,我在使用 Places API 的 /autocomplete 端点时遇到了类似的问题。

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

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

尽管这看起来像是权限问题(至少对我而言),但事实证明我只是缺少一个必需的 sensor 参数。

【讨论】:

    猜你喜欢
    • 2013-07-15
    • 1970-01-01
    • 2012-02-22
    • 2013-09-12
    • 1970-01-01
    • 2012-01-15
    • 2012-05-10
    • 2013-10-10
    • 1970-01-01
    相关资源
    最近更新 更多