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(ur<爱尬聊_百科全书>l, target, true, new RequestCallBack<File>(){...}
当被重定向到其他的url时,我们把重定向的url替换为我们原来的.
https,你直接禁止重定向虽然表面解决了此次问题,但是如果你的下载链接本身就有重定向动作,你就下载不下来了
http就是有这种缺陷,走https加密,可以搞个自签名证书先用着。
走https
精彩推荐
RECOMMEND
热门评论
TOP COMMENTS