0

我正在开发一个应用程序,为一组客户在世界地图上创建图钉。我正在使用谷歌位置服务来获取所有客户坐标,您可以在下面看到示例:

NSString *locationString = [NSString stringWithFormat:@"%.6f,%.6f"];
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://ajax.googleapis.com/ajax/services/search/local?v=1.0&rsz=8&sll=%@&q=%@", locationString, [cusName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

然而,我正在使用一个程序为大约 1000 名客户执行此操作,然后我被谷歌阻止了。

然后我意识到这不应该被谷歌允许: https ://developers.google.com/errors/ “我们收到了自动请求,例如抓取和预取。禁止自动请求;所有请求都必须作为结果发出最终用户操作”

在我看来,我被阻止再提出任何请求,即使是对单个客户也是如此。

有谁知道,我应该怎么做才能解除封锁?

非常感谢!

4

1 回答 1

2

谷歌在您链接的页面下面提到了如何解除封锁。

在大多数情况下,确认遵守使用条款并执行上述步骤将在短时间内自动解除封锁。但是,如果您在解决上述问题后的几个小时内仍未恢复对 API 的访问,请使用下面的表格与我们联系,我们将很乐意进一步调查。

如果您在几个小时内没有恢复,页面下方会有一个表格。您可能首先要检查您的应用程序,看看它是否满足 API 列出的所有要求。

Google 建议发送带有用户 IP 地址的 userip 参数,这样它就不太可能显示为自动机器人(您可以使用一些低级网络代码在 Objective C 中获取 IP 地址。请参阅以编程方式检索 iPhone 的 IP 地址

于 2012-06-20T09:22:58.397 回答