From 5a60b5408414926fd6fe6dbf39c958c749d31779 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 17 三月 2026 16:38:33 +0800
Subject: [PATCH] 【丽水】ssoLoginLyra 接口对接调整 免SSL 登录
---
ruoyi-common/src/main/java/com/ruoyi/common/utils/OkHttpExample.java | 99 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 99 insertions(+), 0 deletions(-)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/OkHttpExample.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/OkHttpExample.java
index 2cd917d..cec9085 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/OkHttpExample.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/OkHttpExample.java
@@ -8,8 +8,17 @@
import java.io.IOException;
import java.security.SecureRandom;
import java.security.cert.X509Certificate;
+import java.util.Map;
+import java.util.concurrent.TimeUnit;
public class OkHttpExample {
+ // 瀹氫箟 JSON 濯掍綋绫诲瀷
+ private static final MediaType JSON = MediaType.get("application/json; charset=utf-8");
+ // 鍒涘缓 OkHttpClient 瀹炰緥锛堝叏灞�鍗曚緥鍗冲彲锛岄伩鍏嶉噸澶嶅垱寤猴級
+ private static final OkHttpClient client = new OkHttpClient.Builder()
+ .connectTimeout(5, TimeUnit.SECONDS)
+ .readTimeout(5, TimeUnit.SECONDS)
+ .build();
public static OkHttpClient createUnsafeOkHttpClient() {
@@ -70,5 +79,95 @@
}
}
+ public static String sendGetRequestWithBearerToken(String url, String token) throws IOException {
+ // 鏋勫缓璇锋眰锛氭坊鍔� Authorization 璇锋眰澶达紙鏍煎紡锛欱earer + 绌烘牸 + token锛�
+ Request request = new Request.Builder()
+ .url(url)
+ .get() // GET 璇锋眰锛堝彲鐪佺暐锛岄粯璁ゅ氨鏄� GET锛�
+ .addHeader("Authorization", "Bearer " + token) // 鏍稿績锛欱earer Token 澶�
+ .addHeader("Content-Type", "application/json") // 鎸夐渶娣诲姞鍏朵粬澶�
+ .build();
+
+ // 鎵ц璇锋眰骞惰繑鍥炲搷搴�
+ try (Response response = client.newCall(request).execute()) {
+ if (!response.isSuccessful()) {
+ throw new IOException("璇锋眰澶辫触锛屽搷搴旂爜锛�" + response.code() + "锛屾秷鎭細" + response.message());
+ }
+ // 璇诲彇鍝嶅簲浣擄紙string() 浼氳嚜鍔ㄥ叧闂祦锛屾棤闇�鎵嬪姩鍏筹級
+ return response.body().string();
+ }
+ }
+
+ // GET 璇锋眰鏂规硶
+ public static String get(String url) throws IOException {
+ Request request = new Request.Builder()
+ .url(url)
+ .get() // 榛樿涓� GET锛屽彲鐪佺暐
+ .build();
+
+ // 鎵ц璇锋眰骞惰幏鍙栧搷搴�
+ try (Response response = client.newCall(request).execute()) {
+ if (!response.isSuccessful()) {
+ throw new IOException("GET 璇锋眰澶辫触锛�" + response);
+ }
+ return response.body().string(); // 璇诲彇鍝嶅簲浣�
+ }
+ }
+
+ // POST 璇锋眰鏂规硶锛堟惡甯� JSON 鍙傛暟锛�
+ public static String post(String url, String json) throws IOException {
+ RequestBody body = RequestBody.create(JSON, json);
+ Request request = new Request.Builder()
+ .url(url)
+ .post(body)
+ .build();
+
+ try (Response response = client.newCall(request).execute()) {
+ if (!response.isSuccessful()) {
+ throw new IOException("POST 璇锋眰澶辫触锛�" + response);
+ }
+ return response.body().string();
+ }
+ }
+
+ // POST 璇锋眰鏂规硶锛坒orm-urlencoded + 蹇界暐SSL璇佷功锛岄�傜敤浜嶰Auth2 token绔偣锛�
+ public static String postFormUnsafe(String url, Map<String, String> formParams) throws IOException {
+ OkHttpClient unsafeClient = createUnsafeOkHttpClient();
+
+ FormBody.Builder formBuilder = new FormBody.Builder();
+ for (Map.Entry<String, String> entry : formParams.entrySet()) {
+ formBuilder.add(entry.getKey(), entry.getValue());
+ }
+
+ Request request = new Request.Builder()
+ .url(url)
+ .post(formBuilder.build())
+ .build();
+
+ try (Response response = unsafeClient.newCall(request).execute()) {
+ if (!response.isSuccessful()) {
+ throw new IOException("POST form 璇锋眰澶辫触锛�" + response.code() + " " + response.message());
+ }
+ return response.body().string();
+ }
+ }
+
+ // GET 璇锋眰鏂规硶锛堝弬鏁版嫾鎺ュ埌URL + 蹇界暐SSL璇佷功锛岄�傜敤浜嶰Auth2 token绔偣锛�
+ public static String getUnsafe(String url, String token) throws IOException {
+ OkHttpClient unsafeClient = createUnsafeOkHttpClient();
+
+ Request request = new Request.Builder()
+ .url(url)
+ .addHeader("Authorization", "Bearer " + token) // 鏍稿績锛欱earer Token 澶�
+ .get()
+ .build();
+
+ try (Response response = unsafeClient.newCall(request).execute()) {
+ if (!response.isSuccessful()) {
+ throw new IOException("GET form 璇锋眰澶辫触锛�" + response.code() + " " + response.message());
+ }
+ return response.body().string();
+ }
+ }
}
--
Gitblit v1.9.3