json - Play Framework : Request_denied when getting json from googlemap url

标签 json google-maps url frameworks playframework

我正在开发 play framework 2.1.1 (java) 和 googlemap v3(本地网站)。

我想使用 googlemap url 获取纬度和经度。 我希望此 url 返回给我 json 响应以便稍后解析它并在我的数据库中插入纬度和经度。 当它不是 googlemap url 时它工作正常但是当我在我的代码中使用这种 url 时出现著名的 "request_denied" 错误:

http://maps.googleapis.com/maps/api/geocode/json?address=Paris&sensor=false

我不知道为什么,我读到这个错误是因为缺少传感器参数,但正如您在我的网址中看到的那样。

关于我的代码:

public static Result displaySomeJson(){
    Promise<WS.Response> request= WS.url("http://maps.googleapis.com/maps/api/geocode/json?address=Paris&sensor=false").get();
    JsonNode json = request.asJson();
    return ok(json.toString())
}

它给我:{"results": [],"status": "REQUEST_DENIED"}

  • 我也尝试使用 http://maps.GOOGLE.com 而不是 http://maps.GOOGLEAPIS.com 但我得到了相同的结果。
  • 我也尝试过使用API key ,但还是失败了。
  • 我没有发送太多请求。

如果您有任何建议,请分享。

最佳答案

好的,我是这样找到的:

Promise<WS.Response> request =
WS.url("http://maps.googleapis.com/maps/api/geocode/json")
.setQueryParameter("address",adresse).setQueryParameter("sensor", "true")
.post("content");

然后我解析了它:

String lat = request.get().asJson().path("results").get(0).get("geometry").get("location").get("lat").toString();
String long = request.get().asJson().path("results").get(0).get("geometry").get("location").get("lng").toString();

我不知道这样做是否是一种“明确”的方式,但它工作正常。 :)

关于json - Play Framework : Request_denied when getting json from googlemap url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16437717/

相关文章:

javascript - 如何在 google maps JavaScript API v3 上隐藏或禁用 google Logo 、页脚、版权?

Android Google Maps API v2 - 如何更改标记图标

asp.net - 如何让我的 ASP.NET 网站允许在 URL 中使用竖线字符?

.htaccess - 导航到另一个页面时保持网站 url 不变吗?

python - 如何在 Django 中保护 URL

javascript - 通过 javascript 对象属性值过滤 JSON 响应

Android JSON解析问题-java.lang.string无法转换为JSONObject

python - 带有 json querydict 和消息的 Django

javascript - 如何将 MySQL 中的时间和值(value)导入 Highcharts

java - BlackBerry - 如何在 GoogleMap 的 BrowserField 中引用位于项目的 res/img 文件夹中的图像