要調用HTTPS接口,可以使用Java中的HttpURLConnection或HttpClient。 下面是使用HttpURLConnection調用HTTPS接口的示例:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class HttpsExample {
public static void main(String[] args) throws IOException {
// 創建URL對象
URL url = new URL("https://api.example.com/endpoint");
// 打開連接
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// 設置請求方法為GET
connection.setRequestMethod("GET");
// 獲取響應碼
int responseCode = connection.getResponseCode();
System.out.println("Response Code: " + responseCode);
// 讀取響應內容
InputStream inputStream = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
// 輸出響應內容
System.out.println("Response Body: " + response.toString());
// 關閉連接
connection.disconnect();
}
}
如果你想要使用HttpClient調用HTTPS接口,可以使用Apache HttpClient庫。你可以通過Maven或Gradle添加以下依賴項:
Maven:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.13</version>
</dependency>
Gradle:
implementation 'org.apache.httpcomponents:httpclient:4.5.13'
下面是使用HttpClient調用HTTPS接口的示例:
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.ssl.NoopHostnameVerifier;
import org.apache.http.conn.ssl.TrustSelfSignedStrategy;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.ssl.SSLContextBuilder;
import org.apache.http.util.EntityUtils;
import java.io.IOException;
public class HttpsExample {
public static void main(String[] args) throws IOException {
// 創建HttpClient對象
CloseableHttpClient httpClient = HttpClients.custom()
.setSSLContext(SSLContextBuilder.create().loadTrustMaterial(new TrustSelfSignedStrategy()).build())
.setSSLHostnameVerifier(new NoopHostnameVerifier())
.build();
// 創建HttpGet請求對象
HttpGet httpGet = new HttpGet("https://api.example.com/endpoint");
// 發送請求,獲取響應
HttpResponse response = httpClient.execute(httpGet);
// 獲取響應內容
HttpEntity entity = response.getEntity();
String responseBody = EntityUtils.toString(entity);
// 輸出響應內容
System.out.println("Response Body: " + responseBody);
// 關閉HttpClient
httpClient.close();
}
}
這是兩種常用的調用HTTPS接口的方法,你可以根據自己的需求選擇其中一種來實現。