我需要从我的api中检索需要标头身份验证的图像。我正在为毕加索指定一个自定义下载程序,但图像永远不会显示。我是否正确覆盖了openConnection方法?
Picasso.Builder builder = new Picasso.Builder(getApplicationContext());
builder.downloader(new OkHttpDownloader(getApplicationContext()) {
@Override
protected HttpURLConnection openConnection(Uri uri) throws IOException {
HttpURLConnection connection = super.openConnection(uri);
connection.setRequestMethod("GET");
connection.setRequestProperty("X_AUTH_TOKEN", authToken);
return connection;
}
});
Picasso picasso = builder.build();
picasso.with(getApplicationContext()).load("http://example.com/api/users/pic/14").into(ivProfilePic);
答案 0 :(得分:9)
请勿使用Picasso.with()
。这是一个初始化默认Picasso
实例的静态方法。
您正在使用自定义下载程序构建您的实例,但您没有使用它。
在构建实例后直接致电picasso.load()
。