android – 在Volley中向NetworkImageView添加身份验证标头

android – 在Volley中向NetworkImageView添加身份验证标头,第1张

概述我使用Volley和Network ImageView.这对几个项目来说非常有用.但是我现在需要在标题中为我的图像请求发送auth令牌.做这个的最好方式是什么?在我的正常请求中,我覆盖getHeaders()并以这种方式放置我的令牌.但ImageLoView使用的ImageLoader会生成一个通用的Request,因此很难添加标题…… 我想出了一个解决方案. 要使用NetworkImageVie 我使用Volley和Network ImageVIEw.这对几个项目来说非常有用.但是我现在需要在标题中为我的图像请求发送auth令牌.做这个的最好方式是什么?在我的正常请求中,我覆盖getheaders()并以这种方式放置我的令牌.但ImagelovIEw使用的ImageLoader会生成一个通用的Request,因此很难添加标题……解决方法 我想出了一个解决方案.
要使用NetworkImageVIEw,您需要创建一个图像加载器.在代码的这一点上,只是覆盖了ImageLoader的makeImageRequest()方法,并且在makeImageRequest()内部,覆盖了’ImageRequest’的getheaders()方法:
imageLoader = new ImageLoader(requestQueue,new ImageLoader.ImageCache() {                private final LruCache<String,Bitmap>                        cache = new LruCache<String,Bitmap>(20);                @OverrIDe                public Bitmap getBitmap(String url) {                    return cache.get(url);                }                @OverrIDe                public voID putBitmap(String url,Bitmap bitmap) {                    cache.put(url,bitmap);                }            }) {        @OverrIDe        protected Request<Bitmap> makeImageRequest(String requestUrl,int maxWIDth,int maxHeight,final String cacheKey) {            //return super.makeImageRequest(requestUrl,maxWIDth,maxHeight,cacheKey);            return new ImageRequest(requestUrl,new Response.Listener<Bitmap>() {                @OverrIDe                public voID onResponse(Bitmap response) {                    onGetimageSuccess(cacheKey,response);                }            },Bitmap.Config.RGB_565,new Response.ErrorListener() {                @OverrIDe                public voID onErrorResponse(VolleyError error) {                    onGetimageError(cacheKey,error);                }            }) {                @OverrIDe                public Map<String,String> getheaders() throws AuthFailureError {                    HashMap<String,String> params = new HashMap<String,String>();                    params.put("Authorization",YOUR_TOKEN);                    return params;                }            };        }    };

这在技术上是一行代码:)我测试了这个,它对我有用.

总结

以上是内存溢出为你收集整理的android – 在Volley中向NetworkImageView添加身份验证标头全部内容,希望文章能够帮你解决android – 在Volley中向NetworkImageView添加身份验证标头所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1136695.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存