当前位置: 首页 > 面试题库 >

HttpEntity的containerContent()的用法

申屠晟
2023-03-14
问题内容

Android
consumeContent()的class或org.apache.http.HttpEntity的目的是什么?

什么时候应该使用它会产生副作用?

我正在尝试修复应用程序中的一个错误,该错误使用HttpClient向服务器发出请求,有时即使一个特定的请求失败,尽管互联网正常,但随后也会失败。应用在输入流读取结束时调用此方法。


问题答案:

正如@Sotirios建议的那样,HttpEntity.consumeContent()已弃用,因此请EntityUtils.consume(HttpEntity)在可行时使用。

然后,让我们大致讨论使用HttpEntity。使用HttpEntity可以确保分配给该实体的所有资源都被释放。这意味着:

  • 基础流被释放。
  • 如果连接已池化,则连接对象将被返回给池。如果未建立连接,则连接管理器将放开有问题的连接对象,并专注于处理其他客户端请求。

什么时候应该使用它?

您应该在不再需要连接资源时释放它们。消费HttpEntity正是为您做到的。

有副作用吗?

我不知道食用任何副作用HttpEntity



 类似资料:
  • 所以我想不通这个看似最简单的问题。我希望创建HttpEntity,其中header具有内容类型application/Json,主体是一个空的Json对象:

  • 我使用的是akka.http.scaladsl.model.HttpResponse,HttpEntity。 在获得响应之后,它的类型为responseEntity的格式(content-type:'application/json',{MyJSONHERE})。有没有办法从实体中提取我的json。 我尝试了entity.GetDataBytes,它以字节字符串格式给出实体的内容。我想正确阅读JS

  • 问题内容: 当我尝试从该网站访问数据时,我尝试使用Selenium自动化从网站中获取数据 这是我的鳕鱼 如何获取我的输出并删除此异常? 提前致谢 问题答案: 为了检查您的代码,我尝试了以下操作: } 它可以与FireFox(29.0)和Chrome(34.0)驱动程序正常工作。我使用了以下jar-s: selenium-server-standalone-2.41.0.jar selenium-j

  • 问题内容: 我遇到过,我不确定它到底在做什么。 例如: 作者为什么要在块关闭连接和垃圾收集器处理时输入? 问题答案: 真正归结为成为“好公民”(并且真正了解接口契约)。什么会做的是释放被持有的所有资源,这实质上意味着释放任何基础流,并给予Connection对象返回到其池(在的情况下你的连接管理器是一个多线程的一个)或释放连接管理器,以便它可以处理下一个要求。 如果您不使用,则实际发生的情况取决于

  • 我不能用HttpEntity调用Spring RestTem板进行POST请求。我调用RestTem板给出Base64字符串在邮递员,但使用我的java实现,它会给出以下错误: 我的实施是: 我尝试过以下解决方案,但在这里不起作用 这个我也提到过这个

  • 问题内容: 这并不是一个真正的问题,但是,我想在这里共享我的一些工作代码,以供您在需要时参考。 众所周知,自API22起已弃用该方法,并自API23起将其完全删除。目前,我们无法再在Android Developer上访问HttpEntity Reference(404)。因此,以下是我在带有Volley且没有HttpEntity的POST Multipart Request中工作的示例代码。工作