在Apache HttpClient中设置套接字缓冲区大小
如何在ApacheHttpClient版本4.3.3中设置套接字缓冲区大小 创建具有所需缓冲区大小的自定义ConnectionConfig对象,并在创建HttpClient对象时将其作为参数传递。例如:在Apache HttpClient中设置套接字缓冲区大小,apache,sockets,buffer,apache-httpclient-4.x,Apache,Sockets,Buffer,Apache Httpclient 4.x,如何在ApacheHttpClient版本4.3.3中设置套接字缓冲区大小 创建具有所需缓冲区大小的自定义ConnectionConfig对象,并在创建HttpClient对象时将其作为参数传递。例如: HttpClient client = new DefaultHttpClient(); client.getParams().setParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 128 * 1024); HttpPost pos
HttpClient client = new DefaultHttpClient();
client.getParams().setParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 128 * 1024);
HttpPost post = new HttpPost(url);
String res = null;
try
{
post.addHeader("Connection", "Keep-Alive");
post.addHeader("Content-Name", selectedFile.getName());
post.setEntity(new ByteArrayEntity(fileBytes));
HttpResponse response = client.execute(post);
res = EntityUtils.toString(response.getEntity());
}
catch (Exception e)
{
e.printStackTrace();
}
ConnectionConfig connConfig = ConnectionConfig.custom()
.setBufferSize(DESIRED_BUFFER_SIZE)
.build();
try (CloseableHttpClient client = HttpClients.custom()
.setDefaultConnectionConfig(connConfig)
.build()) {
HttpGet get = new HttpGet("http://google.com");
try (CloseableHttpResponse response = client.execute(get)) {
// Do something with the response
} catch (IOException e) {
System.err.println("Error transferring file: " + e.getLocalizedMessage());
}
} catch (IOException e) {
System.err.println("Error connecting to server: " + e.getLocalizedMessage());
}
对于完整列表,还有许多其他可配置选项。您可以使用所需的缓冲区大小创建自定义连接配置对象,并在创建HttpClient对象时将其作为参数传递。例如:
ConnectionConfig connConfig = ConnectionConfig.custom()
.setBufferSize(DESIRED_BUFFER_SIZE)
.build();
try (CloseableHttpClient client = HttpClients.custom()
.setDefaultConnectionConfig(connConfig)
.build()) {
HttpGet get = new HttpGet("http://google.com");
try (CloseableHttpResponse response = client.execute(get)) {
// Do something with the response
} catch (IOException e) {
System.err.println("Error transferring file: " + e.getLocalizedMessage());
}
} catch (IOException e) {
System.err.println("Error connecting to server: " + e.getLocalizedMessage());
}
对于完整列表,还有许多其他可配置选项。您可以使用所需的缓冲区大小创建自定义连接配置对象,并在创建HttpClient对象时将其作为参数传递。例如:
ConnectionConfig connConfig = ConnectionConfig.custom()
.setBufferSize(DESIRED_BUFFER_SIZE)
.build();
try (CloseableHttpClient client = HttpClients.custom()
.setDefaultConnectionConfig(connConfig)
.build()) {
HttpGet get = new HttpGet("http://google.com");
try (CloseableHttpResponse response = client.execute(get)) {
// Do something with the response
} catch (IOException e) {
System.err.println("Error transferring file: " + e.getLocalizedMessage());
}
} catch (IOException e) {
System.err.println("Error connecting to server: " + e.getLocalizedMessage());
}
对于完整列表,还有许多其他可配置选项。您可以使用所需的缓冲区大小创建自定义连接配置对象,并在创建HttpClient对象时将其作为参数传递。例如:
ConnectionConfig connConfig = ConnectionConfig.custom()
.setBufferSize(DESIRED_BUFFER_SIZE)
.build();
try (CloseableHttpClient client = HttpClients.custom()
.setDefaultConnectionConfig(connConfig)
.build()) {
HttpGet get = new HttpGet("http://google.com");
try (CloseableHttpResponse response = client.execute(get)) {
// Do something with the response
} catch (IOException e) {
System.err.println("Error transferring file: " + e.getLocalizedMessage());
}
} catch (IOException e) {
System.err.println("Error connecting to server: " + e.getLocalizedMessage());
}
还有很多其他可配置选项,查看完整列表。您是在谈论sou SNDBUF和sou RECVBUF参数还是HTTP连接使用的会话缓冲区?我是在谈论sou SNDBUF和sou RECVBUF参数您是在谈论sou SNDBUF和sou RECVBUF参数还是HTTP连接使用的会话缓冲区?我是在谈论sou SNDBUF和sou RECVBUF参数参数你是在说sou SNDBUF和sou RECVBUF参数还是HTTP连接使用的会话缓冲区?我是在说sou SNDBUF和sou RECVBUF参数你是在说sou SNDBUF和sou RECVBUF参数还是HTTP连接使用的会话缓冲区?我是在说sou SNDBUF和sou RECVBUF参数这是用于在4.3之前,我相信
client.getParams().setParameter(CoreConnectionPNames.SOCKET\u BUFFER\u SIZE,128*1024)
被弃用,这是4.3版本之前的版本,我相信client.getParams().setParameter(CoreConnectionPNames.SOCKET\u BUFFER\u SIZE,128*1024)
被弃用,这是4.3版本之前的版本,我相信client.getParams().setParameter(CoreConnectionPNames.SOCKET\u BUFFER\u SIZE,128*1024)
被弃用,这是4.3版本之前的版本,我相信client.getParams().setParameter(CoreConnectionPNames.SOCKET\u BUFFER\u SIZE,128*1024)代码>已弃用