2012-06-20 63 views
0

我正在开发应用程序,为一群客户在世界地图上创建针脚。我使用谷歌位置服务让所有的客户坐标,你可以看到下面的示例:Google阻止AJAX服务?

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/ “我们接到的自动请求,如刮和预取自动请求被禁止,所有的请求必须由作为最终用户的结果。行动“

在我看来,我被阻止提出任何更多的请求,即使是单个客户。

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

非常感谢!

回答

2

谷歌在下面提到的链接如何获得畅通的页面。

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

如果你几个小时内还没有恢复的话,页面上有一个表格。您可能首先需要检查您的应用程序,看看它是否符合针对API概述的所有要求。

谷歌建议使它成为不太可能出现一个自动机器人发送与用户的IP地址USERIP参数(你可以使用一些低层次的网络代码得到目标C的IP地址。见Programmatically retrieving IP Address of iPhone