2017-06-02 67 views
-1

我試圖構建一個android應用程序,並且在GET操作期間獲得了500個響應,請求完美工作並在郵遞員中返回200。 這是我的代碼,它在創建函數中。在獲取期間改造500響應

try { 

       OkHttpClient client = new OkHttpClient(); 
       client.setConnectTimeout(5, TimeUnit.MINUTES); // connect timeout 
       client.setReadTimeout(5, TimeUnit.MINUTES); 
       Retrofit retrofit = new Retrofit.Builder() 
         .baseUrl(LoginActivity.adresseLocal).addConverterFactory(GsonConverterFactory.create()).client(client) 
         .build(); 
       APIService service = retrofit.create(APIService.class); 
       Call<List<Limit>> call1 = service.getLimit(pf.getString("ip",""),pf.getString("login",""),pf.getString("password",""),pf.getString("database",""), "792EE098-A158-4197-B6B9-23BD95D4F58B", "2", "2"); 

       call1.enqueue(new Callback<List<Limit>>() { 
        @Override 
        public void onResponse(Response<List<Limit>> response, Retrofit retrofit) { 

         System.out.println("respooooonse" + "" + response.code()); 
         Gson gson = new Gson(); 
         TypeAdapter<Limit> adapterrr = gson.getAdapter(Limit.class); 
         try { 
          Limit limit; 

          if (response.errorBody() != null) 
           limit = 
             adapterrr.fromJson(
               response.errorBody().string()); 
         } catch (IOException e) { 
          e.printStackTrace(); 
         } 

         System.out.println("d5aaaaaaaaaaaaaaaaaal"); 
         System.out.println("c bn d5al"); 
         limits = response.body(); 
         System.out.println(response.body()); 

        for (Limit l : response.body()) { 
    // 
    //       System.out.println(l.getRefpeak()); 
    //       System.out.println(p.getPeak()); 

    //       rms.add(new Entry(p.getRms(), i)); 
    //       ku.add(new Entry(p.getKu(), i)); 
    //       peak.add(new Entry(p.getPeak(), i)); 
    //       cf.add(new Entry(p.getCf(), i)); 
    //       ovelo.add(new Entry(p.getOvelo(), i)); 
    //       b1.add(new Entry(p.getB1(), i)); 
    //       b2.add(new Entry(p.getB2(), i)); 
    //       b3.add(new Entry(p.getB3(), i)); 
    //       b4.add(new Entry(p.getB4(), i)); 
    //       b5.add(new Entry(p.getB5(), i)); 
    //       b6.add(new Entry(p.getB6(), i)); 
    //       speed.add(new Entry(p.getSpeed(), i)); 
    //       i++; 
          } 


         } 





        @Override 
        public void onFailure(Throwable t) { 
         //avi.hide(); 
         System.out.println("faiiiilure"); 
         System.out.println("KAKA" + t.toString()); 
        } 
       }); 
      } catch (Exception e) { 
       Log.d("onResponse", "There is an error"); 
       e.printStackTrace(); 
      } 

我的代碼有什麼問題嗎? https://i.stack.imgur.com/LPVm9.jpg

回答

0

如果你得到狀態碼= 500的響應是指「內部服務器錯誤」的錯誤,那麼這可能是服務器沒有與請求發送數據處理好。 要知道更多詳細信息,可登錄發送到服務器的所有參數:

pf.getString("login","") 
pf.getString("ip","") 
... 

然後在郵遞員發送的參數進行比較。

More detail about error 500

+0

我傳遞的參數靜態和一切都沒有改變,我得到了同樣的錯誤。 –

+0

你可以控制服務器嗎?如果是的話,你可以看到服務器的詳細錯誤 – NangSaigon

+0

我使用node.js,沒有錯誤的服務器只是傳遞正確的參數與500代碼。 –