0

我们正在从版本 2 移植到版本 3 的地理编码 api。这个公共url有效,但每天限制为 2500 个请求,我们是商业用户,所以我们需要在 url 中使用clientId&signature参数。我们有clientId谷歌给出的,我们正在signature使用谷歌自己提供的代码生成。

注意:版本 2 要求我们直接使用“密钥”,但在版本中我们需要生成签名并使用它而不是密钥!

但是在生成签名并将clientId和签名附加到url之后,例如

http://maps.googleapis.com/maps/api/geocode/xml?address=27606&sensor=false&client=<OUR_CLIENT_ID>&signature=<SIGNATURE_WE_GENERATE>我们正在收到此消息Unable to authenticate the supplied URL. Please check your client and signature parameters.

知道我们生成签名的方式有什么问题吗?我们直接使用上面给出的示例签名生成代码。

4

2 回答 2

0

实际上我遵循的步骤是正确的,但是我们用来在 google 给出的 java 代码中生成 signed_url 的“YOUR_PRIVATE_KEY”是不正确的。我们为代码提供了正确的私钥,它生成了一个现在可以使用的正确签名。

于 2013-03-28T05:28:56.040 回答
0

我曾经遇到过同样的错误。

我使用了 2 个密钥 - 一个用于开发(带有引用者的浏览器应用程序的密钥:允许任何引用者)- 一个用于服务器(带有引用者的浏览器应用程序的密钥:引用者 = 我的服务器的域)

有一天,我开始在我的开发 VBox 上收到这个错误(无法验证提供的 URL),对于一些 Gooble API 调用(如路由),但奇怪的是不是所有的 API。我通过将本地主机添加到我的服务器的授权引用并为开发和产品使用相同的密钥来解决它。我不能说更多,因为一旦我有了解决方法,了解问题所在并不是我的首要任务,但我希望这可以帮助您解决自己的问题。

于 2013-06-23T17:28:52.363 回答