怎么获得响应头数据
背景
百度搜索结果,但是真实的url被百度加密了,假如我们需要获得真实url需要怎么处理呢?带着这个疑问,我在chrome浏览器里看了下
简单分析
这是百度加密后的url
http://www.baidu.com/link?url=zHfvhKsuV2gzGWyuGeVuSfhZ8kLerKc5oMYBeodhkBfCcqOqnjCl8fsELDW9ZT0xYOb4_JNfEkZL9pW9z_xCxP0Kb1JxfaNnHyKdaYvegOG
我们在chrome浏览器访问这个链接的时候,会看到右边的请求里面,响应头里有个Location,这个Location就是我们真实的地址
接下来就是代码实现
这里我用的是okhttp
我们请求那个加密后的url,然后处理响应
最后顺着层级结构找,找到了我们需要的url
然后我就找到了这个类
okhttp3.Headers
这个类里面保存的就是响应头里面的数据信息,但没提供方法获得
我们可以用反射获得数据
我们跑一下看看
真实的地址就获得了