header location(JavaWeb – HTTP 请求 Header 之 Location 定位解决方案「终于解决」)

发布时间:2025-12-10 19:38:17 浏览次数:3

JavaWeb – HTTP 请求 Header 之 Location 定位解决方案「终于解决」-

JavaWeb – HTTP 请求 Header 之 Location 定位解决方案「终于解决」HttpResponsehttpResponse=call(apiMethod,url,headerMap,formMap,rawJsonMap,rawJsonStr);intstatus=httpResponse.getStatus();if(302==status){url=httpResponse.header(“Location”);httpResponse=call(apiMethod,url,headerMap,formMap.

HttpResponse httpResponse = call(apiMethod, url, headerMap, formMap, rawJsonMap, rawJsonStr);int status = httpResponse.getStatus();if (302 == status) {    url = httpResponse.header("Location");    httpResponse = call(apiMethod, url, headerMap, formMap, rawJsonMap, rawJsonStr);}/** * http call * @param apiMethod * @param url * @param headerMap * @param formMap * @param rawJsonMap * @param rawJsonStr * @param httpResponse * @return cn.hutool.http.HttpResponse */private HttpResponse call(Byte apiMethod, String url, Map<String, String> headerMap, Map<String, Object> formMap, Map<String, Object> rawJsonMap, String rawJsonStr) {    HttpResponse httpResponse = null;    if (apiMethod == Const.Api.ApiMethod.FLAG_GET) {        httpResponse = DHttpUtil.get(headerMap, url);    } else if (apiMethod == Const.Api.ApiMethod.FLAG_POST) {        if (Objects.nonNull(formMap) && formMap.size() > 0) {            httpResponse = DHttpUtil.post(headerMap, url, formMap);        } else if (Objects.nonNull(rawJsonMap) && rawJsonMap.size() > 0) {            httpResponse = DHttpUtil.post(headerMap, url, rawJsonStr);        } else {            httpResponse = DHttpUtil.post(headerMap, url);        }    } else if (apiMethod == Const.Api.ApiMethod.FLAG_PUT) {        if (Objects.nonNull(formMap) && formMap.size() > 0) {            httpResponse = DHttpUtil.put(headerMap, url, formMap);        } else if (Objects.nonNull(rawJsonMap) && rawJsonMap.size() > 0) {            httpResponse = DHttpUtil.put(headerMap, url, rawJsonStr);        }    } else if (apiMethod == Const.Api.ApiMethod.FLAG_DELETE) {        if (Objects.nonNull(formMap) && formMap.size() > 0) {            httpResponse = DHttpUtil.delete(headerMap, url, formMap);        } else if (Objects.nonNull(rawJsonMap) && rawJsonMap.size() > 0) {            httpResponse = DHttpUtil.delete(headerMap, url, rawJsonStr);        }    }    return httpResponse;}

是否还在为Ide开发工具频繁失效而烦恼,来吧关注以下公众号获取最新激活方式。亲测可用!

为防止网络爬虫,请关注公众号回复”口令”

激活idea 激活CLion DataGrip DataSpell dotCover dotMemory dotTrace GoLand PhpStorm PyCharm ReSharper ReShaC++ Rider RubyMine WebStorm 全家桶 刷新

【正版授权,激活自己账号】:Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】:官方授权 正版激活 自己使用,支持Jetbrains家族下所有IDE…

如上伪代码,如果遇到 302 状态码,则取出 Location 里的最终地址,再一次进行请求,如果里面还有,则把 if 用循环来做即可。
需要做网站?需要网络推广?欢迎咨询客户经理 13272073477