gpt4 book ai didi

android picasso 库添加 token header

转载 作者:行者123 更新时间:2023-11-30 01:47:54 25 4
gpt4 key购买 nike

我一直在为这个而伤脑筋,

我正在使用 Picasso 库从我的服务器加载和下载图像,但现在我想在我的下载请求中添加一个 header ,但我似乎找不到实现它的方法。我想要做的就是设置一个标题,如:setHeader("Authorization", "Bearer"+ token);

我在我的任何服务器请求中都使用了这个 header ,但找不到将它添加到 picasso 行的方法。

任何帮助将不胜感激,谢谢!

最佳答案

Picasso 使用 OkHttp 作为 engine ,或者可以配置 Picasso 来使用它,因为你必须设置标题http 请求,您可以使用拦截器。例如。这是我处理基本身份验证的拦截器:

private static class BasicAuthInterceptor implements Interceptor {

@Override
public Response intercept(Chain chain) throws IOException {
final Request original = chain.request();
final Request.Builder requestBuilder = original.newBuilder()
.header("Authorization", "Basic " + BASIC_AUTH_ENCODED)
.method(original.method(), original.body());
return chain.proceed(requestBuilder.build());
}
}

然后你将拦截器添加到 OkHttp 中

 OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.interceptors().add(new BasicAuthInterceptor());

最后一步是配置 Picasso 以使用 okHttpClient。Picasso 的 builder 为它提供了一个方法:

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

梯度依赖:

compile 'com.squareup.okhttp3:okhttp:3.0.1'
compile 'com.squareup.picasso:picasso:2.5.0'

关于android picasso 库添加 token header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33455084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com