TAGS :Viewed: 17 - Published at: a few seconds ago

[ how to implement digest authentication using volley? ]

Any one can help me for implement digest authentication using Google Volley for web service calling (REST).

basically Volley is using SHA1 authentication(Basic Auth), But is there any way to modify with digest Auth (MD5).

Answer 1

The best solution for you is, indeed, use the HttpDigestStack. You can find the docs right here: http://www.java2s.com/Open-Source/Android_Free_Code/Framework/platform/com_gm_android_volleyHttpDigestStack_java.htm

All you have to do is to provide a new instance of a HttpDigestStack as an additional parameter when creating a new RequestQueue using Volley. You can follow this example:

Volley.newRequestQueue(context, new HttpDigestStack());

Answer 2

Both HTTP-authentications use simple header entities. I have not tried this by myself, but i assume all you need to implement is to provide header with Digest-specific format in your custom request like this:

public class MyRequest<T> extends Request<T> {
    public Map<String,String> getHeaders() throws AuthFailureError {
        Map<String,String> headers = new HashMap<String,String>();
        headers.put("Authorization", "Digest " + getAuthorizationData());   
        return headers;

I hope it'll help you