【问题标题】:Google Maps API request谷歌地图 API 请求
【发布时间】:2016-03-14 10:39:25
【问题描述】:
我正在做一个项目,我希望向谷歌地图发送请求。我需要从谷歌接收从一个位置到另一个位置的路径。
这在 Web 服务区域..
必须在java中完成。
从我在谷歌地图 api 描述中读到的内容来看,谷歌对任何请求的响应都是 XML 格式的。
那里没有问题,因为我们可以使用 XPath 和任何其他工具来进行解析。
所以我需要的只是如何将此请求发送到 java 中的 google API?
如果你能解释每一步,那就太好了..
感谢您的耐心:)
【问题讨论】:
标签:
java
xml
web-services
google-maps
xpath
【解决方案1】:
我正在做一个类似的项目(使用 Mapquest 而不是 Google)。我刚刚使用了这样的 HttpConnection:
String requestString = buildURL("Washington", "New York");
URL url = new URL(requestString);
HttpsConnection conn = (HttpsConnection) url.openConnection();
InputStream stream = conn.getInputStream();
只需使用 API 为您提供的正常请求 url。使用 StringBuilder 等参数构建 URL,例如来源和目的地。
public String buildURL(String origin, String destination)
{
StringBuilder urlBuilder = new StringBuilder();
urlBuilder("https://maps.googleapis.com/maps/api/directions/json?");
urlBuilder("origin=");
urlBuilder(origin);
urlBuilder("&destination=");
urlBuilder(destination);
urlBuilder("&key=");
urlBuilder(MY_KEY);
return urlBuilder.toString();
}
最后一步是将流传递给您的 XMLParser。
您还可以对 Connection 进行响应代码检查,以处理错误请求等错误。