cz.msebera.android.httpclient.client.HttpResponseException:未经授权

时间:2019-01-11 21:50:31

标签: java android http asynchronous

您好,我正在尝试构建Clima应用,而我正在使用OpenWeatherMap Api 从互联网上检索天气数据。 当我在物理设备上尝试该应用程序时,收到此消息错误:

  

cz.msebera.android.httpclient.client.HttpResponseException: Unauthorized

我试图生成一个新的API密钥,但存在相同的问题。

// TODO: Add letsDoSomeNetworking(RequestParams params) here:
protected void letsDoSomeNetworking(RequestParams params) {
    AsyncHttpClient client = new AsyncHttpClient();
    client.get(WEATHER_URL, params, new JsonHttpResponseHandler() {

        @Override
        public void onSuccess(int statusCode ,Header[] header , JSONObject response){
            Log.d("Clima", "onSuccess: " + response.toString());
        }

        public void onFailure (int statusCode , Header[] headers , Throwable e , JSONObject response){
            Log.d("Clima", "Onfailure: " + statusCode);
            Log.d("Clima", "fail: " + e.toString());
            Toast.makeText(WeatherController.this, "requestFialed " , Toast.LENGTH_SHORT).show();
        }
    });
}

1 个答案:

答案 0 :(得分:0)

我认为这很像您没有更改此变量 最终字符串APP_ID =“ e **************************** a”;在weathercontroller.java上 您应该编写自己的app_id,可以通过在以下位置注册来自己编写密钥 http://api.openweathermap.org/,您将在电子邮件中获得app_id,并且密钥将在1小时或2小时内激活。祝你好运!!