|
@@ -107,9 +107,24 @@ public class CommonServiceImpl implements CommonService {
|
|
|
rp.setSecretKey(secretKey);
|
|
|
|
|
|
String tkt = request.getParameter("ticket");
|
|
|
+
|
|
|
+ String host = environment.getProperty("examcloud.auth.center.host");
|
|
|
+ if (StringUtils.isBlank(host)) {
|
|
|
+ throw new StatusException("未配置examcloud.auth.center.host");
|
|
|
+ }
|
|
|
+
|
|
|
+ String loginUrlRoot = host + "/api/auth/login/" + schoolCode;
|
|
|
+ String encodeLoginUrlRoot = null;
|
|
|
+ try {
|
|
|
+ encodeLoginUrlRoot = URLEncoder.encode(loginUrlRoot, StandardCharsets.UTF_8.toString());
|
|
|
+ } catch (UnsupportedEncodingException e) {
|
|
|
+ throw new RuntimeException(e);
|
|
|
+ }
|
|
|
+ String loginUrl = authlogin + SystemConstant.GET_UNKNOWN + SystemConstant.SERVICE_KEY + SystemConstant.GET_EQUAL
|
|
|
+ + encodeLoginUrlRoot;
|
|
|
if (Objects.isNull(tkt) || tkt.length() == 0) {
|
|
|
rp.setTicketValid(false);
|
|
|
- rp.setReturnUrl(authlogin);
|
|
|
+ rp.setReturnUrl(loginUrl);
|
|
|
} else {// 校验ticket,获取用户信息
|
|
|
// 发送请求
|
|
|
Map<String, Object> map = new LinkedHashMap<>();
|
|
@@ -120,12 +135,12 @@ public class CommonServiceImpl implements CommonService {
|
|
|
log.warn("data:{}", data);
|
|
|
if (data == null) {
|
|
|
rp.setTicketValid(false);
|
|
|
- rp.setReturnUrl(authlogin);
|
|
|
+ rp.setReturnUrl(loginUrl);
|
|
|
} else {
|
|
|
String loginName = getLoginName(data);
|
|
|
if (StringUtils.isBlank(loginName)) {
|
|
|
rp.setTicketValid(false);
|
|
|
- rp.setReturnUrl(authlogin);
|
|
|
+ rp.setReturnUrl(loginUrl);
|
|
|
} else {
|
|
|
rp.setTicketValid(true);
|
|
|
rp.setLoginName(loginName);
|