Google 地图路线 API 空白回复
Google Maps Directions API blank response
我正在尝试使用 Google 地图路线 API 获取路线。
这几乎就是 Google 自己的文档显示要做的事情 https://developers.google.com/maps/documentation/directions/get-directions#maps_http_directions_toronto_montreal-java
所请求的 URL 在粘贴到浏览器时有效,所以这是正确的。
我可以在 运行 之后看到额外的路线 API 请求。
响应中没有 JSON 方向。
我做错了什么?
private class getDirections extends AsyncTask<LatLng, Void, String> {
@Override
protected String doInBackground(LatLng... point) {
try {
OkHttpClient client = new OkHttpClient().newBuilder()
.writeTimeout(60, TimeUnit.SECONDS)
.readTimeout(60, TimeUnit.SECONDS)
.build();
Request request = new Request.Builder()
.url("https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key="+MAPS_API_KEY)
.method("GET", null)
.build();
Response response = client.newCall(request).execute();
Log.d("response1", response.message());
if (response.message() == "") {
return "error";
}
return response.body().string();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
Image of 'response' in the debugger
response.message()
不是正文,它只是 200 之后的字符串。
HTTP/1.1 200
检查数字或通过 if (!response.isSuccessful) {
的响应
这个查询对我有用。
{
"geocoded_waypoints": [
{
"geocoder_status": "OK",
"place_id": "ChIJpTvG15DL1IkRd8S0KlBVNTI",
"types": [
"locality",
"political"
]
},
{
"geocoder_status": "OK",
"place_id": "ChIJDbdkHFQayUwR7-8fITgxTmU",
"types": [
"locality",
"political"
]
}
],
"routes": [
{
"bounds": {
"northeast": {
"lat": 45.5017123,
"lng": -73.5672184
},
"southwest": {
"lat": 43.6533961,
"lng": -79.3834913
}
},
我正在尝试使用 Google 地图路线 API 获取路线。
这几乎就是 Google 自己的文档显示要做的事情 https://developers.google.com/maps/documentation/directions/get-directions#maps_http_directions_toronto_montreal-java
所请求的 URL 在粘贴到浏览器时有效,所以这是正确的。
我可以在 运行 之后看到额外的路线 API 请求。
响应中没有 JSON 方向。
我做错了什么?
private class getDirections extends AsyncTask<LatLng, Void, String> {
@Override
protected String doInBackground(LatLng... point) {
try {
OkHttpClient client = new OkHttpClient().newBuilder()
.writeTimeout(60, TimeUnit.SECONDS)
.readTimeout(60, TimeUnit.SECONDS)
.build();
Request request = new Request.Builder()
.url("https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key="+MAPS_API_KEY)
.method("GET", null)
.build();
Response response = client.newCall(request).execute();
Log.d("response1", response.message());
if (response.message() == "") {
return "error";
}
return response.body().string();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
Image of 'response' in the debugger
response.message()
不是正文,它只是 200 之后的字符串。
HTTP/1.1 200
检查数字或通过 if (!response.isSuccessful) {
这个查询对我有用。
{
"geocoded_waypoints": [
{
"geocoder_status": "OK",
"place_id": "ChIJpTvG15DL1IkRd8S0KlBVNTI",
"types": [
"locality",
"political"
]
},
{
"geocoder_status": "OK",
"place_id": "ChIJDbdkHFQayUwR7-8fITgxTmU",
"types": [
"locality",
"political"
]
}
],
"routes": [
{
"bounds": {
"northeast": {
"lat": 45.5017123,
"lng": -73.5672184
},
"southwest": {
"lat": 43.6533961,
"lng": -79.3834913
}
},