摘要:因为工作需要,想研究一下执行的逻辑。在这一行调用的实现我在代码里声明的只是一个接口,实现类是。首先根据传入的请求决定出目标投递到执行。
因为工作需要,想研究一下execute执行的逻辑。
在这一行调用execute:
response = getHttpClient().execute(get);
getHttpClient的实现:
private HttpClient getHttpClient() { if (this.m_httpClient == null) { this.m_httpClient = HttpClientBuilder.create().build(); } return this.m_httpClient; }
我在代码里声明的HttpClient只是一个接口,
实现类是InternalHttpClient。
首先根据传入的请求决定出目标-target host
投递到RedirectExec执行。
后者又投递到RetryExec执行。
收到307重定向:
redirectsEnabled标志位为true:
再看当前的请求确实被redirect了吗?
original url:
我的后台服务器返回的307,落到了分支HttpStatus.SC_TEMPORARY_REDIRECT处:
看来Apache的库认为只有HEAD和GET才能被redirect:
重定向最大次数:50
准备重试了:
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/36021.html
摘要:如果服务器证书这两者不合法而我们又必须让其校验通过,则可以自己实现。这个属性是新加的属性,因为目前版本是可以共享连接池的。请求获取数据的超时时间,单位毫秒。如果访问一个接口,多少时间内无法返回数据,就直接放弃此次调用。 /** com.alibaba fastjson 1.2.47 org.apache.httpcomponents ht...
摘要:这种方法打成的包如何运行两种方法将依赖通过全部指定,然后运行,类全名类命名,此方法貌似不再支持页面下载器前期准备导入依赖下载器第一版此处可以自己写个的解析方法第二版匿名内部类版本匿名内部类可以使用表达式来替代,写法为第三版使用包中的 说点别的 maven打包 官方定制的打包方式 使用maven assembly plugin插件完成打包操作,插件配置在pom.xml文件的build标签...
如果您跟我一样,目前正在使用Spring Cloud Config做为配置中心的话,本篇将来要描述的问题,强烈推荐了解和关注!因为这个问题目前存在于所有的版本中,还没有完全修复。原文链接:http://blog.didispace.com/Spr... 问题现象 为了说明下面的内容,我们可以先尝试重现一下问题:在一个测试环境中,将Spring Cloud Config的配置中心迁移到另外一个节点...
摘要:打开知乎首页,打开,开始监听端口,输入用户名和密码,点击登录,查看抓到的包。第二张图是提交的信息,包括,,,,注意,提交的信息中包括,可以从知乎首页中获取。 引言 HttpClient是java语言下一个支持http协议的客户端编程工具包,它实现了HTTP协议的所有方法,但是不支持JS渲染。我们在做一些小玩意时,有可能需要登录某些网站获取信息,那么HttpClient就是你的好帮手,废...
摘要:异常重试默认重试次,三次都失败则抛出或其他异常 maven org.apache.httpcomponents httpclient 4.5.2 异常重试log 2017-01-31 19:31:39.057 INFO 3873 --- [askScheduler-13] o....
阅读 3725·2021-10-13 09:39
阅读 3789·2021-09-24 09:48
阅读 1189·2021-09-01 10:30
阅读 2526·2019-08-30 15:55
阅读 1774·2019-08-29 16:39
阅读 2296·2019-08-26 13:55
阅读 3050·2019-08-26 12:23
阅读 1634·2019-08-26 11:59