猿问

Java HTTP 请求大小

我从包 org.apache.http.client.methods 创建了 HTTPRequestBase 的对象,然后我发送了对象 vie CloseableHttpClient


protected CloseableHttpClient httpClient;

HttpRequestBase httpRequest = this.createHttpRequest(request);

this.httpClient.execute(httpRequest, new BasicResponseHandler());

我想在发送之前检查 httpRequest 大小。我需要将其限制为特定数量的 MB。


我如何检查它的大小?


BIG阳
浏览 337回答 1
1回答

手掌心

这是不容易的。请求的标头和正文是 HTTP 应用程序协议的一部分。如果您的服务器使用 ssl,则证书将作为 SSL/TLS 配置的一部分发送......在 HTTP 启动之前。即使是简单地测量 HTTP 请求中的数据量也很棘手。典型的 HTTP 堆栈不会在一个地方组装整个请求消息,也不会保留发送数据的累积总数。根据您使用的 HTTP 堆栈,您可以(理论上)使用自定义套接字工厂和计算发送字节数的套接字流。
随时随地看视频慕课网APP

相关分类

Java
我要回答