gpt4 book ai didi

java - 不推荐使用 HttpMethod getResponseBodyAsString 但为什么

转载 作者:行者123 更新时间:2023-12-01 17:46:42 25 4
gpt4 key购买 nike

正在查看 Apache 对 HttpClient 的建议 ( http://hc.apache.org/httpclient-3.x/performance.html )其中提到了

Response streaming: It is recommended to consume the HTTP response body as a stream of bytes/characters using HttpMethod#getResponseBodyAsStream method. The use of HttpMethod#getResponseBody and HttpMethod#getResponseBodyAsString are strongly discouraged.

但找不到相同的原因。我目前正在将 getResponseBodyAsString 与 GetMethod 结合使用,想知道我的做法是否正确?

最佳答案

来自文档:“HttpClient 能够进行高效的请求/响应正文流。可以提交或接收大型实体,而无需在内存中进行缓冲。”

getResponseBodyAsString 方法要求 HttpClient 在内存中缓冲整个响应。基本上,您给了 HTTP 服务器一个机会,通过发送巨大的响应来使您的进程崩溃。

但你必须做你必须做的事。如果您的应用程序要求您将响应作为 String 在内存中处理,并且您确定响应不会太大(或者您愿意添加大小检查),那么努力吧。

关于java - 不推荐使用 HttpMethod getResponseBodyAsString 但为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54371087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com