2017-12-01 10 views
0

Amadeus Airport Autocomplete APIを使用しようとしていました。ただし空の応答が返されます。私はちょうどAPI'sからデータを要求することから始めているので、入力は本当に感謝しています。Amadeus APIが空のJSONレスポンスを返します。

JSONdataは、以下のように次のようになります。

[ 
    { 
    "value": "ROC", 
    "label": "Greater Rochester International Airport [ROC]" 
    }, 
    { 
    "value": "MEE", 
    "label": "La Roche - Maré Island Airport [MEE]" 
    }, 
    { 
    "value": "CAY", 
    "label": "Cayenne - Rochambeau [CAY]" 
    } 
] 

次のように私のコードは次のとおりです。

private void RequestParams(){ 
     RequestParams params=new RequestParams(); 
     params.put("apikey",API_KEYTRUE); 
     params.put("term",keyw); 
     letsDoSomeNetworking(params); 
    } 
    private void letsDoSomeNetworking(RequestParams params){ 
     Log.d("PlanSky","Entered Letsdosomenetworking"); 
     //Async Http 
     AsyncHttpClient client =new AsyncHttpClient(); 
     client.get(FIN_URL,params,new JsonHttpResponseHandler(){ 
      @Override 
      public void onSuccess(int statusCode, Header[] headers, JSONArray response) { 
       Log.d("PlanSky","Success"); 

       try {  
        Log.d("PlanSky", "response" +response); 
       } 
       catch(Exception e){ 
        Log.d("PlanSky","Exception"+e); 
       } 
      } 

      @Override 
      public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 
       Log.d("PlanSky","Error Encountered"); 

      } 
     }); 
} 

私は応答JSONObject obj=response.getJSONObject(0);からJSONobjectを要求しようとしたが、それはどちらか

何も返しませんでした

logcatの出力は次のとおりです。

D/PlanSky: Button Clicked 
D/PlanSky: Entered Letsdosomenetworking 
D/PlanSky: Success 
D/PlanSky: response[] 

答えて

0

これは、入力データの問題であり、API自体の問題ではありません。無効な用語を入力すると、その用語に一致する空港がないため、APIが空のリストを返すのは正常です。この現象を再現するためにシューティングゲームをプレイしてみてください。たとえば、term = ""または "@"の場合、空の応答が表示されます。

関連する問題