问题标签 [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 - 使用 HttpCore 的网络服务器的 http 请求/响应流程
我正在尝试编写一个接受 Http 请求并在 Java 中返回 Http 响应的小型网络服务器。我正在使用 Apache HttpCore,具体来说,我正在将HttpServerConnection
其视为在我的网络服务器流程中使用的主界面。
但是,我在网上找不到使用示例。看到有一个receiveRequestHeader
方法,但是不知道什么时候可以用(是不是应该先建立连接?创建时是否建立了连接?这个方法会阻塞吗?)。
您能否为此类提供一个简短的使用示例(我正在使用的实现是DefaultHttpServerConnection
),或者提出不同的方法?
java - Apache HttpComponents HttpClient 超时
如何在 httpcomponents httpclient 中设置连接超时?我在以下位置找到了文档:http ://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html但不清楚这些参数是如何实际设置的。
SO_TIMEOUT
此外,解释和之间的区别CONNECTION_TIMEOUT
将是有帮助的。
java - 从请求中获取发布数据
我正在使用 HttpCore 库用 Java 编写服务器端应用程序。我有一个 HttpRequest,我正在尝试获取从表单发送的 postdata。问题是 - 当我使用它时request.getEntity()
,它返回一个空对象,即使当我通过 HTTPFox 查看我发送的帖子数据的类型时,它也清楚地存在。
我究竟做错了什么?
java - 在 Java 中创建和加载 cookie
我正在用 Java 编写一个小型网络服务器,HttpCore
用于大多数 Http 请求/响应等。
现在我希望能够创建、存储和加载 cookie。我找不到任何东西,HttpCore
而且我对其他库也不熟悉。是否有现有的库(最好有一个工作示例)来处理 cookie?
编辑:我看到我对 cookie 的使用有点困惑。我不完全确定它是如何工作的,但我想保持一个会话,并从 Web 服务器访问会话变量。我怎样才能做到这一点?如果浏览器保存了 cookie,它是否会将它们发送到服务器?我如何访问它们?
java - 如何使用 Apache httpcomponents 从 NHttpRequestHandler 中分辨远程 IP 地址?
我正在使用 Apache httpcomponents 实现彗星式(延迟响应)http 服务器。我的代码与http://hc.apache.org/httpcomponents-core-ga/examples.html上的“基本非阻塞 HTTP 服务器”示例非常相似
我使用 DefaultServerIOEventDispatch 和 DefaultListeningIOReactor 来分派请求,就像在示例代码中一样。在我的 NHttpRequestHandler 中,我想记录每个请求的 IP 地址。
在 HttpRequestHandler 中,您可以访问 HttpRequest、HttpResponse 和 HttpContext。使用 NHttpRequestHandler 你也有一个 NHttpResponseTrigger。如何获取请求来自的远程 IP 地址?我看不到如何使用可用的对象来做到这一点。
更新,这是我最终使用的 Scala 代码:
如您所见,HttpComponents 4.1 中有一个额外的步骤。
java - 如何更改 Apache httpcore NIO 中半处理请求的套接字超时?
假设您有一个基于 Apache HttpComponents 的应用程序,它处理常规请求和长轮询请求(“comet”)。通过使用 NHttpRequestHandler 您可以延迟某些请求的响应并立即发送其他请求的响应。
但是,如何为常规请求实现较短的套接字超时,而为长轮询请求实现较长的套接字超时呢?在某些情况下,如果不开始处理它们,可能不容易区分这两种类型的请求。从测试看来,使用 setParams() 在请求对象上设置新的超时不会影响超时。响应对象也是如此。
java - apache httpcomponent 和 sftp 协议 - 可以使用该协议吗?
我只是想知道...有没有办法将 sftp 协议与 httpcomponent apache lib 一起使用来上传多部分文件?
我找不到任何教程,所以你最好在那个方向分享一些代码片段......
任何有用的意见表示赞赏
java - HTTP 组件编码问题
当使用 HTTP 组件(http 的 java 库)时,我得到的响应'
显示为.Æ
-
ȗ
java - 在 http 响应处理或文本操作期间“破折号”出现乱码
我正在编写代码来处理来自维基百科的文本,并且遇到了破折号乱码的问题。我以前没有使用过破折号或其他非标准字符(对我来说是非标准的字符,不会出现在我的键盘上;),所以我不确定在哪里指向我的手指做错了。这是正在发生的事情,以及代码片段......
我向 Wikipedia 发送请求(我使用 Apache HttpComponents 客户端 API 与 Wikipedia 进行通信)以获取文章的内容并将其保存在字符串中:
此时,如果我要向 System.out 发送“responseBody”,则短划线会在我的 Eclipse 控制台中显示为“?”。这可能只是一个 Eclipse 控制台显示问题,所以我将继续。
我处理文本,忽略短划线,然后将文本发送回维基百科。
当现在上传到维基百科的文本显示在网络浏览器中时,之前的破折号现在显示为“?” 在一个盒子里(未知字符?)。因此,在某处我无意中更改或错误编码了破折号,但我不确定确切的位置。
有人可以指出我正确的方向吗?
java - 如何从使用 ThreadSafeClientConnManager 的连接的响应中获取分块页脚?
我正在使用由 ThreadSafeClientConnManager (Apache httpcomponents 4.1.1) 创建的连接。响应是分块的(我期望的),由 response.getEntity().isChunked() 确定
但是,没有办法获得页脚/拖车(这是我们的应用程序所必需的)。由于响应被分块,我希望实体内容的类型为 ChunkedInputStream,但是客户端使用的默认请求导向器和执行器类包装了原始响应实体(从 httpcomponents 源来看,它是一个 ChunkedInputStream)在 BasicManagedEntity 中。
简而言之,我不再能够从响应中获取页脚/拖车,因为 BasicManagedEntity 不会使基础实体可供使用。有谁知道如何解决这个问题?
供参考,请参阅:
- org.apache.http.impl.client.DefaultRequestDirector.java,第 523-525 行
- org.apache.http.impl.entity.EntityDeserializer.java,第 93-96 行