2016-12-28 11 views
0

application/jsonをコンテンツタイプとして設定しますが、getBodyContentType()をapplication/jsonにオーバーライドしてからVolleyサーバーエラーを取得します。POSTメソッドのVolley Stringrequestのheaderとしてapplication/jsonを設定します。

StringRequest postRequest = new StringRequest(Request.Method.POST, url, 
      new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 
        try { 
         listener.onResponse(response); 
         Log.d("Response",response.toString()); 

        } catch (Exception e) { 
         e.printStackTrace(); 
         if (response.length() == 0) { 
          Log.d("ERROR : ", "NO RESPONSE"); 
         } else { 
          Log.d("ERROR : ", "EXCEPTION"); 
         } 
        } 
       } 
      }, 
      new Response.ErrorListener() { 
       @Override 
       public void onErrorResponse(VolleyError error) { 
        // error 
        listener.onError(error.toString()); 
        Log.d("Error.Response", error.toString()); 
       } 
      } 
    ) { 
     @Override 
     protected Map<String, String> getParams() { 
      Map<String, String> params = new HashMap<String, String>(); 
       params.put("macId", macValue); 
      return params; 
     } 
     @Override 
     public String getBodyContentType() { 
      return "application/json"; 
     } 

    }; 

    // Adding request to request queue 
    AppController.getInstance().addToRequestQueue(postRequest); 
} 

注:それは動作します

@Override 
    public Map<String, String> getHeaders() throws AuthFailureError { 
     HashMap<String, String> headers = new HashMap<String, String>(); 
     return headers; 
    } 

public String getBodyContentType() { 
     return "application/json; charset=utf-8"; 
    } 

と同様getHeadersをオーバーライドして、何も渡しません:メソッド次のコードスニペットで回答に

+0

ヘッダーは 'getParamas()'メソッドで設定できます。 –

+0

あなたはcontent type with application/jsonを上書きすることができます。getHeaders http://stackoverflow.com/a/17445275/1842454 –

答えて

0

オーバーライドを提供してください。

+0

これは試してみました。 – Abiranjan

+0

上記の解決策も試してみました – Anjali

+0

まだ動作していませんAnjali! – Abiranjan

0

まず、郵便配達員のあなたのウェブサービスをチェックしてください。

関連する問題