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
        }
      },