2017-10-21 187 views
0

我想通過POST提交一個HTTPS請求,但它不起作用。該請求帶我到onErrorResponse,但沒有顯示錯誤是什麼。我用郵差測試,它工作正常。 我離開了我的部分代碼。使用Android Volley的HTTPS請求

Map<String, String> params = new HashMap<String, String>(); 

    params.put(PARAM_HASH_TOKEN, HASH_TOKEN); 
    params.put(PARAM_USUARIO, id); 
    params.put(PARAM_PASSWORD, password); 

    JSONObject jsonBody = new JSONObject(params); 
    Log.e("POST",jsonBody.toString()); 

    JsonObjectRequest mJsonObjectRequest = new JsonObjectRequest(Request.Method.POST, URL_API, jsonBody, new Response.Listener<JSONObject>() { 
     @Override 
     public void onResponse(JSONObject response) { 
      if (response != null) { 
       F_PARSEAR_JSON_RESPUESTA(response); 
      } 
     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      String msg = (error.getMessage() == null) ? "Ha ocurrido un error, intentelo de nuevo." : error.getMessage(); 
      Log.e("ERROR",URL_API); 
      Log.e("ERROR",msg);    
      _loginButton.setEnabled(true); 
     } 
    }); 
    ApplicationLoader.getInstance().addToRequestQueue(mJsonObjectRequest); 
+0

你是什麼意思,不顯示錯誤?你在調試器中運行並確認它是空的嗎? –

+0

@sam_c沒錯,我正在使用調試器,並沒有顯示錯誤。 – user3281600

回答

0

您可以檢查客戶端和服務器中的內容類型嗎?它們具有相似的價值。

 @Override 
     public Map<String, String> getHeaders() throws AuthFailureError { 
      HashMap<String, String> headers = new HashMap<String, String>(); 
      headers.put("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); 
      return headers; 
     } 
     @Override 
     public String getBodyContentType() 
     { 
      return "application/json"; 
     } 

我希望它能幫助你!

+0

不起作用=(,認爲ssl證書不受信任 – user3281600

+0

我遇到過類似的錯誤,您嘗試測試其他內容類型。 – Thientvse