如何使用Glide和OkHttp获取http响应头文件

问题描述:

我需要从图像获取http响应头文件。如何为Glide的每个请求创建一个拦截器?是否有必要创建一个滑翔模块?如何使用Glide和OkHttp获取http响应头文件

首先,您必须使用自定义GlideModule而不是默认的Glide和OkHttp。

请参阅this example关于如何做到这一点。

然后你必须写一个OkHttp拦截器来拦截响应信息并得到响应头。

请参阅此OkHttp Logging Interceptor代码,您将了解如何拦截响应并获取响应标头。

你必须是拦截器设置为您OkHttpClient(其中大多是单一实例):

OkHttpClient okHttpClient = new OkHttpClient.Builder().addInterceptor(yourInterceptor).build(); 

OkHttpClient实例将被传递到您的自定义GlideModule实现的registerComponents()回调:

glide.register(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory(okHttpClient)); 
+0

谢谢,@bob :) –

+0

高兴地帮助:) – Bob