吐槽贴,基于事实,不喜可喷
WTF
Android 的 WebView 本来不想做拦截请求,但当前需求必须要用到 shouldInterceptRequest 去处理请求。。。
看到 WebResourceResponse 这个比玩意就想骂街😂

过时的那个短方法就不提了,废柴一个。
API 21 才增加的第二个方法,看起来很强大,但稍微用过 HTTP 响应头也不会写出这种接口代码。。。
响应头居然是<String, String>,我至今不知道如何填写这个比玩意,每次看到这货就想骂,不提供多值特性也至少留个数组<String, List<string>>啊,提供这个接口的人非蠢即坏。没办法只能从多值里面强制取第一个,其余的全部丢弃(懒得研究用,还是;还是什么鸟规范去拼接后是否能够被正常使用)。</string>
另外细想,已经有了响应头参数了,还要 mime 和 encoding 参数做吊,纯粹多余,读一下 content-type 响应头就会烂 jj 吗(如果会,那加这两个参数可以原谅😂)
猜想当时 Google 内部加这个方法时是这样的:
[boss] 我们在 Android 5.0 上给 WebResourceResponse 升级一下,多开放点,让那群 2B 开心开心
[临时工] ok boss,好的 boss,马上搞 boss
...
[临时工] 我加了状态码和响应头
[临时工] HTTP 响应的要素都齐全了,该有的有了不该有的也有了,绝对吊炸天
[boss] 八错八错,上线
...
[我] 一棍子呼死你们这群王八犊子