Android用XUtils下载apk文件被运营商劫持,如何处理. 财富值90

2016-10-13 14:21发布

https://support.qiniu.com/hc/...
七牛提供的解决方法,但是项目中应用次方法局限性太大.
遂问还有其他的解决方法吗?

//自己解决了
自己替换掉xutils的重定向handler

public class NoHttpRedirectHandler implements HttpRedirectHandler {     private String url;      public NoHttpRedirectHandler(String url) {         this.url=url;     }      public HttpRequestBase getDirectRequest(HttpResponse response) {         if(response.containsHeader("Location")) {             HttpGet request = new HttpGet(url);             MGLog.e("upgrade","可恶,但是已经阻止了重定向!");             if(response.containsHeader("Set-Cookie")) {                 String cookie = response.getFirstHeader("Set-Cookie").getValue();                 request.addHeader("Cookie", cookie);             }             return request;         } else {             return null;         }     } }

实际使用:

HttpManagerX.getHttpUtils().configHttpRedirectHandler(new NoHttpRedirectHandler(url)).download(url, target, true, new                 RequestCallBack<File>(){...}

当被重定向到其他的url时,我们把重定向的url替换为我们原来的.

3条回答
bbjbbj - 这个人很懒,什么都没留下
1楼 · 2016-10-13 14:42.采纳回答

https,你直接禁止重定向虽然表面解决了此次问题,但是如果你的下载链接本身就有重定向动作,你就下载不下来了

http就是有这种缺陷,走https加密,可以搞个自签名证书先用着。

走https

一周热门 更多>