问题标签 [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.
java - 为什么 HTTP 客户端需要 InputStream?(爪哇)
我一直在使用 Java 中的各种 HTTP 客户端从网站获取各种信息或使用网络服务(如谷歌地图地理编码器)
我正在使用的当前客户端是来自 Apache的HTTP 组件客户端。
我一直想知道为什么没有 .getText() 或 .getBytes() 方法可以简单地为我提供 url 的所有内容,而是有返回 InputStream 的方法。这样做的意义或原因是什么?
这不像我不断与服务器通信,所以我必须不断检查流。HTTP 是无状态的,那么为什么没有 getText()/getBytes() 方法在收到 HTTP 响应后简单地返回其内容(作为 String 或 byte[])?
java - 多部分格式的解析器
org.apache.http 可以与多部分一起使用吗?
我发送带有标头的http请求Range : bytes=0-500,9000-9999
我得到文件格式:
如何只取字节?
java - Apache HttpComponents HttpClient 超时
如何在 httpcomponents httpclient 中设置连接超时?我在以下位置找到了文档:http ://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html但不清楚这些参数是如何实际设置的。
SO_TIMEOUT
此外,解释和之间的区别CONNECTION_TIMEOUT
将是有帮助的。
java - 如何只获取 HTML 页面的一部分?
挑选出我从 Apache 和 Java 的 HttpClient4 请求获得的 Html 页面的一部分的最佳方法是什么?具体来说,我需要一个表格(它的内容)。
解释,示例或链接会很棒。
java - Apache HTTP 4.x:如何在 HttpClient 上配置“默认上下文”
在 Apache HTTP Client(4.x,commons http 3.x 的继承者)中,关于HttpClient
方法:
JavaDocs 中的状态:
“使用默认上下文执行请求。”
- 什么是默认上下文(引用一个
HttpContext
对象)? - 如何配置默认上下文,这样我就不需要在每次调用时将其传递给
execute()
?(我不控制对 execute() 的调用,但我控制创建 HttpClient)
java - Java Httpclient HttpRequestRetryHandler 不起作用。如何实现重试?
我正在尝试在未收到响应后实施请求重试。我在 Httpclient 教程中阅读了它。HttpRequestRetryHandler 只被调用一次,然后抛出异常。我在这里做错了什么?
更新
我if
在 SocketTimeoutException 的异常处理中添加了一个条件。
但是从那里做什么呢?我该如何重试?
在服务器中,我设置了断点,因此它将保持连接并且不会返回响应。我在 Httpclient 中遇到的错误:
java - 使用 NTLM 身份验证时最新的 Apache HttpClient 4.1.1 出现 HTTP/1.1 407 错误
我正在尝试使用 Apache HttpClient 4.1.1 库 ( http://hc.apache.org/httpcomponents-client-ga/tutorial/html/authentication.html ) 从我公司使用 ISA 的代理访问网站具有 NTLM 身份验证的服务器,但我不断收到 HTTP 407 Proxy Authentication Required 错误:
代码片段
输出/输出
我在这里想念什么?
更新:在相同的环境中,使用 JDK URL 和 URLConnection 类的代码可以工作!
工作代码片段
输出/输出
java - 为什么我收到异常 javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated?
我正在使用 Apache HttpComponents HttpClient(4.0.1) 进行 HTTPS 调用,但我将这个异常作为响应:
我提供了所有必需的参数。目标系统不需要任何用户名/密码或代理,但它包含安装在服务器中的 JKS csrtificates。用户名和密码为空值。
这适用于org.apache.commons.httpclient.methods.PostMethod
- 版本 3.0 - commons-httpclient-3.0.jar 现在我们已经实现了org.apache.http.client.methods.HttpPost
- 版本 4.0.1 - commons-httpclient.jar
这是不起作用的示例代码片段:
java - Apache HttpClient POST 不适用于实体
我开发了一个简单的基于 Java 套接字的 Web 服务器,它可以读取来自客户端的请求。对于客户端,我使用带有以下代码的 Apache HttpClient 库:
当我执行代码时,服务器从客户端获取此请求:
还行吧。但现在我想通过 HTTP-POST 发送一些数据,所以我扩展了我的代码:
如果我现在执行代码,则不会进入服务器。如果我删除“httppost.setEntity(testString);” 一切都会像开头描述的那样工作。所以问题一定出在“httppost.setEntity(testString);”。
有谁知道为什么当我使用“setEntity”时什么都没有发送?有没有其他方法可以传输数据?我已经尝试过这个例子: http: //svn.apache.org/repos/asf/httpcomponents/httpclient/branches/4.0.x/httpclient/src/examples/org/apache/http/examples/client/ClientFormLogin.java但是没有成功。
也许问题出在我的网络服务器上。成功请求的响应应该是什么样的?我使用此消息:
maven-2 - 如何在 Maven 中使用 httpclient 4.1.x
httpclient 4.0 版在我的 pom.xml 中工作:
...但版本 > 4.0 不编译:
错误:
知道如何在 Maven 中使用 httpclient 4.1 吗?