Microsoft Store 桌面应用发布流程
582 2023-04-03 03:02:11
在连接开始前,调用trustAllHttpsCertificates()方法即可
@Test public void test08(){ String message = "orderToken=2016081516204941291387764" + "&orderMoney=10.8"+"&OrderStatus=10"; try{ trustAllHttpsCertificates(); URI uri = new URI("https://br-payment.xcloudgame.com/index.php? s=/PagSmile/pay_callback/order_id/P-SMILE-147134625445/gid/2"); SimpleClientHttpRequestFactory schr = new SimpleClientHttpRequestFactory(); ClientHttpRequest request = schr.createRequest(uri, HttpMethod.POST); request.getBody().write((message).getBytes()); ClientHttpResponse response = request.execute(); String resultString = new String(FileCopyUtils.copyToByteArray(response.getBody())); System.out.println("resultString=" + resultString); }catch (Exception e){ e.printStackTrace(); } } // 跳过SSL验证 ,在获取connection之前调用这个方法 trustAllHttpsCertificates private static void trustAllHttpsCertificates() throws Exception { javax.net.ssl.TrustManager[] trustAllCerts = new javax.net.ssl.TrustManager[1]; javax.net.ssl.TrustManager tm = new miTM(); trustAllCerts[0] = tm; javax.net.ssl.SSLContext sc = javax.net.ssl.SSLContext .getInstance("SSL"); sc.init(null, trustAllCerts, null); javax.net.ssl.HttpsURLConnection.setDefaultSSLSocketFactory(sc .getSocketFactory()); } static class miTM implements javax.net.ssl.TrustManager, javax.net.ssl.X509TrustManager { public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } public boolean isServerTrusted( java.security.cert.X509Certificate[] certs) { return true; } public boolean isClientTrusted( java.security.cert.X509Certificate[] certs) { return true; } public void checkServerTrusted( java.security.cert.X509Certificate[] certs, String authType) throws java.security.cert.CertificateException { return; } public void checkClientTrusted( java.security.cert.X509Certificate[] certs, String authType) throws java.security.cert.CertificateException { return; } }