首页 > 解决方案 > 如何使用授权标头从 url 获取位图?

问题描述

我试过了picassovolley但是从 url 获取图像非常麻烦。如何在 asynctask 中添加带有令牌的 auth 标头以获取位图?

标签: androidimagebitmapheaderauthorization

解决方案


只需调用它,然后使用 picasso 实例,这里我添加一个访问令牌。但您也可以添加用户名和密码。

private void setupPicasso()
{        

    final Context c = context;
    OkHttpClient client = new OkHttpClient.Builder()
            .addInterceptor(new Interceptor() {
                @Override
                public Response intercept(Chain chain) throws IOException {
                    String token = <token you got when you logged in>;
                    String authString = "Bearer "+token;                        
                    Request newRequest = chain.request().newBuilder()
                            .addHeader("Authorization", authString)
                            .build();
                    return chain.proceed(newRequest);
                }
            })
            .build();
    picasso = new Picasso.Builder(context)
            .downloader(new OkHttp3Downloader(client))
            .build();
}

推荐阅读