问题标签 [apache-httpclient-4.x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
268 浏览

java - 已打开 MAX_CONNECTIONS 且忙时的 HttpClient 行为

我在多线程环境中使用 httpClient (4.1.x)。我正在使用 ThreadSafeClientConnManager 类来创建持久连接的连接池,当我的 Web 服务器接收到请求时,不同的线程会调用这些连接池。

HttpClient 有一个 MAX_CONNECTIONS 参数和一个 MAX_CONNECTIONS_PER_ROUTE 参数,可以根据需要服务的并发请求数进行配置。

我的问题是关于达到 MAX_CONNECTIONS 限制时 ThreadSafeClientConnManager 的行为。支持 MAX_CONNECTIONS 已打开且都处于忙碌状态,即被其他线程使用。现在,一个新线程向连接池发出一个新请求以进行连接。现在,它(ConnectionPool)是否忽略此请求,或者调用是否阻塞调用线程并等待连接管理器能够找到空闲连接?

0 投票
3 回答
2081 浏览

java - 使用 ApacheHttpClient 处理与身份验证相关的中间重定向

我正在尝试打开这个 uri

..但它会重定向到身份验证服务(在https上),该服务会弹出一个用户名和密码框...如果在浏览器上...然后需要您输入凭据...然后返回到第一个链接我试图打开并显示内容......所以我想知道当这个中间重定向到身份验证服务发生时......我如何通过代码将我的用户名和密码输入到该弹出窗口......我正在尝试使用 apache HttpClient去做这个...

这是我发出请求的 proxi.jsp 代码..

这是我得到的错误: -

如果我尝试粘贴此网址

回到浏览器,然后我会弹出一个用于身份验证的窗口,如果我在该窗口中写下我的用户名和密码,那么我会得到我正在寻找的实际内容。是否有我必须在 proxi.jsp 页面中传递的任何标题。因为在页面中传递用户名和密码并不是最好的方法......或任何其他方式。任何建议将不胜感激..

0 投票
4 回答
12048 浏览

java - HttpClient 4.1.1 需要 HTTP/1.1 401 授权

我正在尝试打开这个 uri

这是我的 proxi.jsp 页面,当我传递我的凭据时,我收到了这个错误 HTTP/1.1 401 Authorization Required。为什么会这样。那个网站使用siteminder。

0 投票
2 回答
444 浏览

java - ClientCustomSSL 与 HTTP 4.1.1

谁能告诉我我们是否必须创建 my.keystore 文件或者它将被创建。当我在我的jsp文件所在的同一目录(webapp目录)中创建这个文件并且我在我的jsp文件中使用这个代码时。

我得到了错误

那么我应该把这个文件放在哪里。这是两个文件的路径,即 jsp 文件和 my.keystore

0 投票
1 回答
17890 浏览

java - 从 HttpClient 3.x 迁移到 4.x

我们有一些使用 commons-httpclient-3.1 编写的代码,需要转换为 4.1。我只是对此有点熟悉,现在正在阅读 4.1 httpclient 教程

我在这里看到了一些帖子(例如从 HttpClient 3 转换为 4,但这是关于特定构造的)。似乎应该有一些文档/示例显示如何将 3.x 的使用升级到 4.x ?

一个具体的例子:替换使用 org.apache.commons.httpclient.HttpState

0 投票
2 回答
1278 浏览

java - gwt-dev 包括 httpclient 4.0 我如何在 Maven 环境中解决这个问题?

我的项目使用 httpcore 4.1... gwt-dev 2.3 jar 包括 4.0... 不向前兼容。如果我从 jar 中破解 4.0 并欺骗 maven 使用它,我的生成器将工作并且我的代码无需额外更改即可编译。如何在不破解我的 maven 存储库的情况下做到这一点,以便创建可重现的构建?如果我只想在我的 gwt 构建中添加一个生成器,我真的需要完整的 gwt-dev jar 吗?我肯定错过了什么...

0 投票
1 回答
13257 浏览

java - 使用 Apache DefaultHttpClient 访问受密码保护的 URL 时,什么可能导致 CircularRedirectException?

我正在尝试访问需要身份验证的页面。所以我在代码中传递了我的用户名和密码。这是我得到的以下输出和错误。首先它执行请求http://me.somehost.com/,我得到错误为Caused by: org.apache.http.client.CircularRedirectException: Circular redirect to. 但之后它尝试访问http://me.somehost.com/robots.txt并且我从服务器获得响应,因为它验证了我的用户名和密码。我得到的响应是实际响应如果我使用该链接在浏览器中输入我的用户名和密码.. 那么为什么会发生此链接http://me.somehost.com/

这是我的验证码..

我做错了什么。因为它接受一个链接的用户名和密码,并为第二个链接抛出错误。任何建议将不胜感激...

0 投票
7 回答
79088 浏览

java - Apache HttpClient 超时

有没有办法为整个执行指定超时HttpClient

我尝试了以下方法:

它实际上工作正常,除非远程主机发回数据——即使是一字节/秒——它将继续永远读取!但我想在最多 10 秒内中断连接,无论主机是否响应。

0 投票
2 回答
1106 浏览

java - URLEncodedUtils.parse() 是否保留顺序?

URLEncodedUtils.parse(uri, encoding)是否以 URL 中提到的相同顺序返回参数?它是否返回具有重复名称的参数的所有值?

0 投票
1 回答
1020 浏览

java - 如何释放与 Apache http 客户端属性的连接?

我使用 Apache http 客户端 4.1 并且总是在执行后关闭响应InputStream(例如通过调用EntityUtils.consume(response.getEntity)HttpGet

HttpGet现在我想知道如果执行抛出异常,连接是否正确释放。在这种情况下我应该明确释放连接吗?