how to implement digest authentication using volley?

巧了我就是萌 提交于 2019-12-08 15:51:39

问题


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).


回答1:


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> {
...
    @Override
    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




回答2:


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());


来源:https://stackoverflow.com/questions/34305060/how-to-implement-digest-authentication-using-volley

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!