2017-12-01 4 views
0

Ich habe versucht, die Amadeus Airport Autocomplete API zu verwenden. Es wird jedoch immer eine leere Antwort zurückgegeben. Ich fange gerade an, Daten von API's anzufordern, also wird Eingang sehr geschätzt.Amadeus API gibt eine leere JSON Antwort zurück

Die JSONdata sieht aus wie wie folgt:

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

Mein Code ist wie folgt:

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"); 

      } 
     }); 
} 

Ich versuchte, ein JSONobject aus der Antwort JSONObject obj=response.getJSONObject(0); anfordert, aber es hat auch nichts zurückgeben

Der logcat-Ausgang ist wie folgt:

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

Antwort

0

Dies ist höchstwahrscheinlich ein Problem mit Ihren Eingabedaten und nicht die API selbst. Wenn Sie einen ungültigen Begriff angeben, ist es normal, dass die API eine leere Liste zurückgibt, da Ihrem Begriff keine Flughäfen zugeordnet sind. Versuchen Sie, mit dem Shooter zu spielen, um dieses Verhalten zu reproduzieren, zum Beispiel wenn term = "" oder "@" Sie eine leere Antwort sehen.

Verwandte Themen