import okhttp3.*;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class ApiTest {
private final OkHttpClient client;
public ApiTest() {
// 创建公共请求头集合
Map<String, String> commonHeaders = new HashMap<>();
commonHeaders.put("Authorization", "Bearer YOUR_ACCESS_TOKEN");
commonHeaders.put("User-Agent", "ApiTest/1.0");
commonHeaders.put("X-Request-ID", "REQ-123456");
commonHeaders.put("Accept", "application/json");
// 创建拦截器
Interceptor headerInterceptor = chain -> {
Request originalRequest = chain.request();
Request.Builder builder = originalRequest.newBuilder();
// 批量添加公共请求头
for (Map.Entry<String, String> entry : commonHeaders.entrySet()) {
builder.addHeader(entry.getKey(), entry.getValue());
}
return chain.proceed(builder.build());
};
// 创建 OkHttpClient 实例
this.client = new OkHttpClient.Builder()
.addInterceptor(headerInterceptor)
.build();
}
// 测试接口方法
public void testApiEndpoint(String url) throws IOException {
Request request = new Request.Builder()
.url(url)
.build();
try (Response response = client.newCall(request).execute()) {
System.out.println("Response Code: " + response.code());
System.out.println("Response Body: " + response.body().string());
}
}
public static void main(String[] args) throws IOException {
ApiTest tester = new ApiTest();
tester.testApiEndpoint("https://httpbin.org/get");
}
}