Volley 커스텀 헤더 붙이기

Volley 라이브러리를 사용시 헤더를 붙이려면 아래 함수를 오버라이딩 하면 된다.

public Map getHeaders() throws AuthFailureError {
}

사용 예제 코드

JsonObjectRequest jr = new JsonObjectRequest(Request.Method.POST, url , null,new Response.Listener() {

            @Override
            public void onResponse(JSONObject response) {

                Log.d(mTag, "Response : " + response);
            }
        }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError volleyError) {
                Log.i(mTag, "error " + volleyError.getMessage());
            }

        }) {

            String combined = finalUrlApiKey + ":" + finalUrlApiSecret;

            // Base64 encode the string
            String base64Encoded = Base64.encodeToString(combined.getBytes(), Base64.NO_WRAP);

            @Override
            public Map getHeaders() throws AuthFailureError {
                Map  params = new HashMap();
                params.put("Authorization", "Basic " + base64Encoded);

                return params;
            }
        };

코드 : https://github.com/lahi/RestaurantRecommandApp