|
|
@ -3,10 +3,13 @@ package com.fr.design.login.utils; |
|
|
|
import com.fr.design.DesignerEnvManager; |
|
|
|
import com.fr.design.DesignerEnvManager; |
|
|
|
import com.fr.design.mainframe.toast.DesignerToastMsgUtil; |
|
|
|
import com.fr.design.mainframe.toast.DesignerToastMsgUtil; |
|
|
|
import com.fr.general.CloudCenter; |
|
|
|
import com.fr.general.CloudCenter; |
|
|
|
|
|
|
|
import com.fr.general.CloudCenterConfig; |
|
|
|
import com.fr.general.GeneralContext; |
|
|
|
import com.fr.general.GeneralContext; |
|
|
|
|
|
|
|
import com.fr.general.http.HttpToolbox; |
|
|
|
import com.fr.general.log.MessageFormatter; |
|
|
|
import com.fr.general.log.MessageFormatter; |
|
|
|
import com.fr.json.JSONObject; |
|
|
|
import com.fr.json.JSONObject; |
|
|
|
import com.fr.log.FineLoggerFactory; |
|
|
|
import com.fr.log.FineLoggerFactory; |
|
|
|
|
|
|
|
import com.fr.stable.StringUtils; |
|
|
|
import com.fr.third.org.bouncycastle.util.encoders.Hex; |
|
|
|
import com.fr.third.org.bouncycastle.util.encoders.Hex; |
|
|
|
import java.awt.Window; |
|
|
|
import java.awt.Window; |
|
|
|
import java.security.SecureRandom; |
|
|
|
import java.security.SecureRandom; |
|
|
@ -49,6 +52,9 @@ public class DesignerLoginUtils { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static String generateDesignerSSOUrl(String referrer) { |
|
|
|
public static String generateDesignerSSOUrl(String referrer) { |
|
|
|
|
|
|
|
if (!DesignerLoginUtils.isOnline()) { |
|
|
|
|
|
|
|
return referrer; |
|
|
|
|
|
|
|
} |
|
|
|
String ssoTemplate = CloudCenter.getInstance().acquireUrlByKind("designer.sso.api", "https://id.fanruan.com/api/app/?code={}&referrer={}"); |
|
|
|
String ssoTemplate = CloudCenter.getInstance().acquireUrlByKind("designer.sso.api", "https://id.fanruan.com/api/app/?code={}&referrer={}"); |
|
|
|
try { |
|
|
|
try { |
|
|
|
String code = generateLoginCode(); |
|
|
|
String code = generateLoginCode(); |
|
|
@ -60,6 +66,19 @@ public class DesignerLoginUtils { |
|
|
|
return referrer; |
|
|
|
return referrer; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static boolean isOnline() { |
|
|
|
|
|
|
|
if (CloudCenterConfig.getInstance().isOnline()) { |
|
|
|
|
|
|
|
String ping = CloudCenter.getInstance().acquireConf("ping", StringUtils.EMPTY); |
|
|
|
|
|
|
|
if (StringUtils.isNotEmpty(ping)) { |
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
return StringUtils.isEmpty(HttpToolbox.get(ping)); |
|
|
|
|
|
|
|
} catch (Exception ignore) { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private static String generateLoginCode() throws Exception { |
|
|
|
private static String generateLoginCode() throws Exception { |
|
|
|
DesignerEnvManager manager = DesignerEnvManager.getEnvManager(); |
|
|
|
DesignerEnvManager manager = DesignerEnvManager.getEnvManager(); |
|
|
|
JSONObject jo = JSONObject.create(); |
|
|
|
JSONObject jo = JSONObject.create(); |
|
|
|