安卓Picasso 2.5.2版本中如何添加自定义HTTP头

5

我在Stack Overflow上尝试了几个解决方案,但都没有对我起作用。

如何在Android Picasso库版本2.5.2中添加自定义HTTP头?


好的,问题很简短但是非常清楚,我认为不需要添加更多细节 ;) - Manza
在编程中,"header"一词有许多含义,例如列表视图的标题或任何图像的页眉。如果您要使用它,必须明确指定。 - Ravi Vaghela
所以,你的一般方法是创建一个带有拦截器的OkHttpClient来添加头部,然后将客户端包装在OkHttpDownloader中,并使用它来构建Picasso实例,然后在调用Picasso.with()之前使用Picasso.setSingletonInstance()设置该实例。对吗? - david.mihola
@ridsatrio 因为 Picasso 可以从 URL 加载图像,而在我的情况下,此端点需要身份验证。 - Manza
@Manza:你怎么不使用Picasso.with()?如果你能粘贴一些代码,这会更容易一些... - david.mihola
显示剩余3条评论
1个回答

8

基于Android Picasso库,如何添加身份验证标头?

我已经以这种方式解决了

依赖项:

compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.squareup.okhttp:okhttp:2.5.0'

代码

 OkHttpClient okHttpClient = new OkHttpClient();
 okHttpClient.interceptors().add(new Interceptor() {
 @Override
 public Response intercept(Chain chain) throws IOException {
 Request newRequest = chain.request().newBuilder()
               .addHeader("X-CUSTOM-HEADER", "my-header-value")
               .build();
                return chain.proceed(newRequest);
            }
        });

 return new Picasso.Builder(context).downloader(new OkHttpDownloader(okHttpClient)).build();

感谢您的帮助


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接