问题标签 [apache-commons-httpclient]

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 投票
3 回答
11563 浏览

java - BindException/在负载下使用 HttpClient 时打开的文件过多

我有 1000 个专用 Java 线程,每个线程每秒轮询一个相应的 url。

线程每秒运行一次:

问题是,如果我每隔一秒运行一次作业,我就会得到如下随机异常:

但如果我每 2 秒或更长时间运行一次作业,一切都会运行良好。

我什至尝试使用 shutdown() 关闭 SimpleHttpConnectionManager() 的实例,但没有任何效果。

如果我执行 netstat,我会看到数以千计的 TCP 连接处于 TIME_WAIT 状态,这意味着它们已关闭并正在清理。

因此,为了限制连接数,我尝试使用单个 HttpClient 实例并像这样使用它:

然而,运行 2 小时后,它开始抛出“打开的文件太多”,最终什么也做不了。

我应该能够增加允许的连接数并使其工作,但我只会延长邪恶。知道在上述情况下使用 HttpClient 的最佳做法是什么吗?

顺便说一句,我还在 HttpClient3.1 上。

0 投票
4 回答
24875 浏览

java - Apache HttpClient 摘要认证

基本上我需要做的是执行摘要身份验证。我尝试的第一件事是此处提供的官方示例。但是当我尝试执行它时(通过一些小的更改,使用 Post 而不是 Get 方法)我得到一个

当失败时,我尝试使用:

起初我只覆盖了“realm”和“nonce”DigestScheme 参数。但事实证明,在服务器上运行的 PHP 脚本需要所有其他参数,但无论我是否指定它们,当我调用其 authenticate() 方法时,DigestScheme 都不会在 Authorization RequestPreperty 中生成它们。PHP 脚本返回 HTTP 响应代码 200,并显示 PHP 脚本需要 cnonce、nc 和 qop 参数的消息。

我已经为此苦苦挣扎了两天,没有运气。基于一切,我认为问题的原因是 PHP 脚本。在我看来,当应用程序尝试未经授权访问它时,它不会发送挑战。

有什么想法吗?

编辑:还有一件事,我试过用 cURL 连接,它可以工作。

0 投票
2 回答
4622 浏览

java - HttpClient - 设置“全局”套接字超时,以及每个请求的单独超时

使用 HttpClient,我使用以下内容设置默认套接字/连接超时:

我想知道是否可以根据每个请求覆盖这些值?

编辑:这行得通吗?

我试过了,似乎可以,但是很难测试/创建会发生超时的情况。

0 投票
1 回答
1149 浏览

java - 公共 http 客户端 - 协商时的 kerberos 令牌具有 \r\n(回车换行符)字符

我正在尝试使用 jakarta commons http 客户端。进行 kerberos 身份验证以与服务器通信。身份验证总是失败。在深入挖掘时,我发现 kerberos 令牌标头中有回车换行符,这是问题的根本原因。为什么它有 \r\n 字符,为什么这是一个问题?

0 投票
2 回答
699 浏览

java - 使用 commons-httpclient-3.X.jar 的 Java 问题

我需要从 commons-httpclient-3.0.jar 传递到 commons-httpclient-3.1.jar 但更改 jar 我的代码不再起作用。问题是新库会自动对传递的 uri 进行编码。有没有办法避免这种情况?我必须与 Yahoo API 交互,并且我不能对 URI 进行编码,否则我将无法访问服务。这里有一个我的代码的划痕,比较两个打印行我观察到传递的 URI 和使用的 URI 之间的差异。

这是输出:

getMethod 失败:HTTP/1.1 401 禁止

副本:oauth_problem signature_invalid

特别是:

%26&oauth_version --> %2526&oauth_version

xoauth_lang_pref="en​​-us" --> xoauth_lang_pref=%22en-us%22

0 投票
1 回答
1345 浏览

java - 为什么要从 HttpClient 版本 3 切换到 4

我的 Java 应用程序是使用 HttpClient 3 开发的。切换到版本 4 有什么好处吗?

有没有更新日志。文章、博客条目或描述新功能的内容?

0 投票
1 回答
550 浏览

java - 帮助。获取执行 PostMethod.getStatusCode() 的异常!

无法弄清楚为什么我在这里得到空指针: System.out.println(method.getStatusCode()); !?方法初始化并成功执行!有任何想法吗?示例代码在这里。我正在使用 commons-httpclient-3.1.jar

0 投票
4 回答
28490 浏览

android - How to enable logging for apache commons HttpClient on Android

To enable logging for apache commons HttpClient in normal Java application I used:

But on android I don't see logs in LogCat.

Am I missing some thing?

0 投票
1 回答
284 浏览

java - 欺骗postMethod(java中的apache)?

我对此很陌生,所以请不要抨击我。

我正在尝试模拟一个 Postmethod,以便我可以设置它返回的状态。例如,我想将我的 PostMethod 设置为 200。

这样做的原因是我试图模拟没有互联网连接的计算机

提前致谢

0 投票
2 回答
4792 浏览

java - Java HTTP 发布原始数据

鉴于我拥有的原始数据,我正在寻找一个 HTTP 发布请求。我花了一段时间寻找解决方案,做了一些尝试,我正在寻找一点帮助。我想要做的 PHP 代码如下所示:

我的尝试是这样的:

然后执行postMethod,但这只是一个不包含数据的post。有没有人看到我做错了什么?我想弄清楚如何更改此方法以使其真正起作用。谢谢!

-肯