问题标签 [apache-httpcomponents]
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.
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 吗?我肯定错过了什么...
java - Java - DefaultHttpClient 和“主机”标头 [Apache HttpComponent]
我通过 DefaultHttpClient 提交多个 HTTP 请求。问题是“主机”标头从未在请求中设置。例如通过执行以下 GET 请求:
生成的请求对象没有设置强制性的“主机”标头的值:
有小费吗?
java - 如何使用 Apache Http 组件中继来自 servlet 的 POST 请求?
我对 Servlet API 和 Apache Http 组件都不太熟悉。
我需要使用我已经实现的 HttpServlet.doPost() 处理带有未知数据的传入 POST 请求(尽管可能是表单提交的结果),并从另一个 URL 请求相同的发布信息,有效地充当HTTP POST。然后,我需要将响应转换为字符串(它将是 text/html)并进一步处理它,然后再将其返回到向我请求它的 Web 浏览器。
由于我对这些库不熟悉,我不清楚如何处理发布数据的内容类型等问题,以及如何避免因忽略释放资源而导致的任何问题。
任何人都可以对此提供任何指示吗?
java - Apache HttpCore,简单的服务器来回显收到的帖子数据
使用此处找到的 ElementalHttpServer 示例类:
我能够成功接收帖子数据,我的目标是将收到的帖子数据转换为我可以打印的字符串。我已经修改了 HttpFileHandler 如下,使用 eneity.getContent() 来获取 inputStream,但我不确定如何将 inputStream 转换为字符串。
}
感谢您的任何想法
java - Java:HttpComponents 从特定 URL 的输入流中获取垃圾响应
我目前正在尝试让 HttpComponents 发送 HttpRequests 并检索响应。在大多数 URL 上,这都没有问题,但是当我尝试获取 phpBB 论坛的 URL 时,即http://www.forum.animenokami.com客户端需要更多时间,并且 responseEntity 包含不止一次的段落导致损坏.html 文件。
例如,元标记包含六次。由于许多其他 URL 有效,我无法弄清楚我做错了什么。该页面在已知浏览器中正常工作,因此这不是他们方面的问题。
这是我用来发送和接收的代码。
我希望你能帮助我。如果您需要更多信息,我会尽快提供。
java - 当 EntityUtils.toString() 返回异常时,有没有办法获取 HttpEntity 的字符串值?
我一直遇到这种情况,我得到一个错误的 HTTP 响应(如 400),但无法查看 HttpResponse 对象中的 HttpEntity。当我使用调试器单步执行时,我可以看到实体有内容(长度 > 0),我什至可以查看内容,但我看到的只是一个数字数组(我猜是 ASCII 码?)有帮助。我将在实体上调用 EntityUtils.toString(),但我得到一个异常——要么是 IOException,要么是某种“对象处于无效状态”异常。这真是令人沮丧!有没有办法以人类可读的形式获取这些内容?
这是我的代码:
看看我在哪里抛出异常?我想做的是吸出 HttpEntity 的内容并将其放入异常中。
java - 如何使用 HttpComponents 发布数组参数
我想用 Apache http-components (4.1.2) 执行这个命令
目标 api 需要字符串和string-keys参数作为数组,这意味着对每个参数重复strings[]和string-keys[]。
此 curl 命令工作正常,但使用 Http 组件,而我得到完全相同的参数。
也许我做错了什么。
POST 参数看起来像:
如果我将它们放在 curl 中的 --data 后面,它可以工作,但不能与 HttpCoponents 一起使用。有人可以解释我为什么吗?
提前致谢
java - 使用 httpcomponents 通过单个连接处理多个请求?
我想使用单个连接与客户端设备进行通信。
我在保持连接有效时遇到问题。我正在使用 DefaultConnectionReuseStrategy(),它在每次请求后为 keepAlive() 返回 false,因此连接始终关闭。我已将 Connection 标头设置为 Keep-Alive,但它仍然总是关闭连接。
我的第二个问题是,如果我重写 keepAlive() 以始终返回 true,我的客户端会在读取输入流时阻塞。我该怎么处理这个?我应该阅读内容长度标题以了解要阅读的内容吗?如果没有给出内容长度怎么办?
java - HTTP客户端-服务器,我不认为我正在关闭与 BasicResponseHandler() 的客户端连接
我有一个使用 Apache HTTPCore 实现的服务器,它可以接受来自 httpclient 实现的帖子。我有足够的工作,以便我可以发送到服务器,处理帖子内容,并在客户端上获取响应。一切似乎都正常,但是我注意到服务器保持连接活动直到超时,即使客户端连接已成功完成。我假设我需要在收到响应后关闭客户端的连接,但是我相信我已经在使用时这样做了BasicResponseHandler()
,它返回 a String
,所以我无法弄清楚我需要什么实际上关闭。
对此有什么想法吗?我打算尝试使用返回一个不同的响应处理程序InputStream
,并查看关闭是否有效,但我认为它BasicResponseHandler
已经在后台执行此操作,因为它返回一个String
java - Apache HttpClient 将域解析为 IP 地址且证书不匹配
使用 Apache HttpComponents HttpClient 库 (4.0.2) 时,我遇到了证书未正确验证的问题。该证书对域名有效(我们称之为 example.com),但它会根据 IP 地址进行验证:
证书中的主机名不匹配:<123.123.123.123> != <*.example.com>
我建立连接的代码是:
通过 Web 浏览器连接时,证书本身显示为有效,并且对我要连接的域名有效:
CN = *.example.com
该证书也被添加到 Java 密钥库中(使用常规测试HttpsURLConnection
)。
任何想法为什么此代码使用 IP 地址而不是域名?