JessYanCoding / JessYanCoding/MVPArms

关于glide加载

Open
#375 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
10.2k
Forks
2.3k
PR merge metrics
No merged PRs in 30d

Description

### Bug Description:
通过 GlobalConfigModule.Builder 配置okhttp之后,在拦截器中添加了默认header,导致glide加载图片会有header,图片加载失败。

### Bug Log:
D: ┌────── Request ────────────────────────────────────────────────────────────────────────
D: │ URL: https://nim-nosdn.netease.im/MTEyNzQ3NTg=/bmltYV8xODYyNDk3NzEzNF8xNTk2MTA0MTY2MTM4XzFjMzgyNDg0LWFlYjUtNDQ4Ni1hNWU5LWMwMzYyYTA4ZjkzNg==
D: │
D: │ Method: @POST
D: │
D: │ Headers:
D: │ ┌ User-Agent: ChuangYeTianXia/1.9.000(Android : 8.0.0)
D: │ ├ Content-Type: application/x-www-form-urlencoded
D: │ ├ Content-Length: 391
D: │ ├ Host: nim-nosdn.netease.im
D: │ ├ Connection: Keep-Alive
D: │ └ Accept-Encoding: gzip
D: │
D: │ Body:
D: │ data=iL+p6Pthk6gXmUFj4qdyia/B06vwcfl9sUoBQ3YWjxV5PPnoQLDertgrBV7nakxBdeJcydxUDeB6
D: │ Hl9YCWM0YY5M93/NBZMppPH53jRLhU/Vb+YSULIDyjL/ZtuL2KRtFQGKbrR9aWlMPjYoC/Qqpv90
D: │ Llyw0YU+mXNmW7x8WDStyEBvoDggA4/AGKefAit04SlSaay3jZaW3WZ9aQR1BilHh/v94KycHXrm
D: │ HQF2mlMI7ELn1bQgcpdfeNy1huYewh0J8gXNF4+Gdo8BmZLGBJ05seajmuSk
D: │ &phone_type=ChuangYeTianXia/1.9.000(Android : 8.0.0)
D: └───────────────────────────────────────────────────────────────────────────────────────

而且不知道为什么是post请求...

通过代码发现GlideConfiguration中
@Override
public void registerComponents(@NonNull Context context, @NonNull Glide glide, @NonNull Registry registry) {
//Glide 默认使用 HttpURLConnection 做网络请求,在这切换成 Okhttp 请求
AppComponent appComponent = ArmsUtils.obtainAppComponentFromContext(context);
registry.replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory(appComponent.okHttpClient()));
}
使用了appComponent.okHttpClient()。

### Others:
目前解决方案是重新创建了类继承AppGlideModule,不再依赖于框架的图片加载,不知道会引起什么问题,顾有此问。

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.