Skip to content

Commit 9db6a96

Browse files
committed
refactor: streamline OkHttpClient creation and SSL configuration handling
1 parent 4b36a21 commit 9db6a96

1 file changed

Lines changed: 4 additions & 33 deletions

File tree

easy-postman-app/src/main/java/com/laker/postman/service/http/HttpService.java

Lines changed: 4 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -59,17 +59,12 @@ public class HttpService {
5959
*/
6060
private static OkHttpClient buildDynamicClient(OkHttpClient baseClient,
6161
PreparedRequest preparedRequest,
62-
int timeoutMs,
63-
boolean isolateConnectionPool) {
62+
int timeoutMs) {
6463
OkHttpClient.Builder builder = baseClient.newBuilder();
65-
if (isolateConnectionPool) {
66-
// Avoid reusing sockets that were established under a different SSL verification mode.
67-
builder.connectionPool(new ConnectionPool());
68-
}
6964
// 添加自动解压拦截器
7065
builder.addNetworkInterceptor(new CompressionDecompressNetworkInterceptor());
7166

72-
applyRequestSettings(builder, preparedRequest, isolateConnectionPool);
67+
applyRequestSettings(builder, preparedRequest);
7368

7469
// 只有至少需要一种信息收集时才创建 EventListener
7570
// 如果三个开关都是 false,则不创建(最小性能开销)
@@ -128,12 +123,11 @@ private static OkHttpClient buildCustomClient(PreparedRequest req) {
128123
resolveSslVerificationMode(req)
129124
)
130125
: OkHttpClientManager.getClient(baseUri, req.followRedirects);
131-
return buildDynamicClient(baseClient, req, req.requestTimeoutMs, false);
126+
return buildDynamicClient(baseClient, req, req.requestTimeoutMs);
132127
}
133128

134129
private static void applyRequestSettings(OkHttpClient.Builder builder,
135-
PreparedRequest preparedRequest,
136-
boolean overrideSslConfiguration) {
130+
PreparedRequest preparedRequest) {
137131
if (!preparedRequest.cookieJarEnabled) {
138132
builder.cookieJar(CookieJar.NO_COOKIES);
139133
}
@@ -146,29 +140,6 @@ private static void applyRequestSettings(OkHttpClient.Builder builder,
146140
} else if (HttpRequestItem.HTTP_VERSION_HTTP_2.equals(httpVersion)) {
147141
builder.protocols(List.of(Protocol.HTTP_2, Protocol.HTTP_1_1));
148142
}
149-
150-
if (overrideSslConfiguration) {
151-
applySslVerificationSetting(builder, preparedRequest);
152-
}
153-
}
154-
155-
private static void applySslVerificationSetting(OkHttpClient.Builder builder, PreparedRequest preparedRequest) {
156-
URI uri;
157-
try {
158-
uri = URI.create(preparedRequest.url);
159-
} catch (Exception e) {
160-
return;
161-
}
162-
163-
String scheme = uri.getScheme();
164-
boolean secureScheme = "https".equalsIgnoreCase(scheme) || "wss".equalsIgnoreCase(scheme);
165-
if (!secureScheme) {
166-
return;
167-
}
168-
169-
SSLConfigurationUtil.SSLVerificationMode mode = resolveSslVerificationMode(preparedRequest);
170-
171-
SSLConfigurationUtil.configureSSL(builder, mode, uri.getHost(), resolveSecurePort(scheme, uri.getPort()));
172143
}
173144

174145
static boolean shouldIsolateConnectionPool(PreparedRequest preparedRequest) {

0 commit comments

Comments
 (0)