重用 org.apache.commons.httpclient.methods.PostMethod 对象时出现问题

发布于 2024-11-07 07:55:00 字数 270 浏览 0 评论 0原文

我注意到,如果我通过调用 setRequestEntity(...) 重用 PostMethod 对象,服务器端会出现错误,因为请求未正确解析。似乎请求正文的长度是在我第一次调用 setRequestEntity 时设置的,而在我第二次调用 setRequestEntity 后该长度没有重置。

如果我为每个请求使用单独的 PostMethod 对象,一切都会正常工作,但是有没有办法为不同的请求重用 PostMethod 对象,因为单独调用 setRequestEntity(...) 不足以更新请求的内容?

I've noticed that if I reuse a PostMethod object by calling setRequestEntity(...), there are errors on the server side because the request is not parsed correctly. It seems as though the length of the body of the request is set the first time I call setRequestEntity, and this length is not being reset after the second time I call setRequestEntity.

Everything works fine if I use a separate PostMethod object for each request, but is there a way to reuse a PostMethod object for different requests since calling setRequestEntity(...) alone is not sufficient to update the content of the request?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

若无相欠,怎会相见 2024-11-14 07:55:00

不可以。您可以重用 HttpClient 实例,但不能重用 Method 实例。它们通常是一次性使用的。

No. You can reuse HttpClient instances but not Method instances. They are normally one time use.

停顿的约定 2024-11-14 07:55:00

不必担心重用 PostMethod 对象,只需创建新的对象即可。
如今,JVM 可以快速识别此类短命对象并收集它们。

Don't worry about reusing PostMethod objects, just create new ones.
The JVM nowadays quickly identifies such short lived objects and collects them.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文