直接上代码,这是工具类。Authorization字段值相当于cookie或者token,先在postman里试一下,跑通这个接口需要哪些必要的字段。
同时这个使用的是maven框架,和testng技术
package com.ssl;
/**
* @Author:
* @Date: 2021/5/24
* @Version 1.0
*/
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
public class HttpRequest {
//private static StringExpression ToolValid;
/**
* 向指定URL发送GET方法的请求
*
* @param url 发送请求的URL
* @param param 请求参数是 name1=value1&name2=value2 的形式。
* @return URL 所代表远程资源的响应结果
*/
static String sendGet(String url, String param, boolean isHttps) {
if (isHttps)
setUpHttpsURLConnection();
StringBuffer result = new StringBuffer();
BufferedReader in = null;
try {
// 创建SSLContext对象,并使用我们指定的信任管理器初始化
TrustManager[] tm = { new MyX509TrustManager() };
SSLContext sslContext = SSLContext.getInstance("SSL");
sslContext.init(null, tm, new java.security.SecureRandom());
// 从上述SSLContext对象中得到SSLSocketFactory对象
SSLSocketFactory ssf = sslContext.getSocketFactory();
// 打开和URL之间的连接
// url = url + "?" + param;
URL realUrl = new URL(url);
HttpsURLConnection conn1 = (HttpsURLConnection) realUrl.openConnection();
conn1.setSSLSocketFactory(ssf);
//if (ToolValid.isNotEmpty(param))
//URL realUrl1 = new URL(url);
// 打开和URL之间的连接
//HttpURLConnection conn1 = (HttpURLConnection) realUrl1.openConnection();
// 设置通用的请求属性
conn1.setRequestMethod("GET");// POST GET PUT DELETE
conn1.setRequestProperty("accept", "*/*");
conn1.setRequestProperty("
Java接口自动化,post请求和get请求绕过HTTPS的SSL校验
最新推荐文章于 2024-06-17 09:51:38 发布