|
|
@ -2,8 +2,9 @@ package com.epmet.commons.thirdplat.apiservice.jcet; |
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.epmet.commons.thirdplat.apiservice.AbstractApiService; |
|
|
|
import com.epmet.commons.thirdplat.constants.JcetApiUrls; |
|
|
|
import com.epmet.commons.thirdplat.constants.JcetConstants; |
|
|
|
import com.epmet.commons.thirdplat.dto.form.jcet.SsoTicketFormDTO; |
|
|
|
import com.epmet.commons.thirdplat.dto.form.jcet.SsoTokenFormDTO; |
|
|
|
import com.epmet.commons.thirdplat.dto.result.jcet.UserInfoResultDTO; |
|
|
|
import com.epmet.commons.thirdplat.encrypt.SignUtils; |
|
|
|
import com.epmet.commons.thirdplat.properties.JcetThirdplatProps; |
|
|
@ -26,35 +27,47 @@ public class JcetApiService extends AbstractApiService { |
|
|
|
jcetThirdplatProps = props.getJcet(); |
|
|
|
} |
|
|
|
|
|
|
|
public UserInfoResultDTO login(String ticket) { |
|
|
|
|
|
|
|
try { |
|
|
|
UserInfoResultDTO userInfoByTicket = getUserInfoByTicket(ticket); |
|
|
|
// todo
|
|
|
|
} catch (UnsupportedEncodingException e) { |
|
|
|
e.printStackTrace(); |
|
|
|
} |
|
|
|
|
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @return |
|
|
|
* @Description 通过第三方平台ticket获取用户信息 |
|
|
|
* @author wxz |
|
|
|
* @date 2021.01.19 10:26 |
|
|
|
*/ |
|
|
|
public UserInfoResultDTO getUserInfoByTicket(String ticket) throws UnsupportedEncodingException { |
|
|
|
SsoTicketFormDTO ssoTicket = new SsoTicketFormDTO(); |
|
|
|
ssoTicket.setSsoTicket(ticket); |
|
|
|
Result<String> result = HttpClientManager.getInstance().sendPostByJSONAndHeader( |
|
|
|
jcetThirdplatProps.getDomain().concat(JcetApiUrls.GET_USER_BY_TICKET), |
|
|
|
JSON.toJSONString(ssoTicket), getHeaders(ssoTicket)); |
|
|
|
|
|
|
|
String domain = jcetThirdplatProps.getDomain(); |
|
|
|
Result<String> result = HttpClientManager.getInstance().sendPost( |
|
|
|
domain.concat(JcetConstants.URL_GET_USER_BY_TICKET), |
|
|
|
domain.startsWith("https://"), |
|
|
|
JSON.toJSONString(ssoTicket), |
|
|
|
getHeaders(ssoTicket)); |
|
|
|
|
|
|
|
UserInfoResultDTO resultDTO = parseResult(result, UserInfoResultDTO.class); |
|
|
|
return resultDTO; |
|
|
|
} |
|
|
|
|
|
|
|
private UserInfoResultDTO getUserInfoByToken(String ticket) throws UnsupportedEncodingException { |
|
|
|
SsoTicketFormDTO ssoTicket = new SsoTicketFormDTO(); |
|
|
|
ssoTicket.setSsoTicket(ticket); |
|
|
|
Result<String> result = HttpClientManager.getInstance().sendPostByJSONAndHeader( |
|
|
|
jcetThirdplatProps.getDomain().concat(JcetApiUrls.GET_USER_BY_TICKET), |
|
|
|
JSON.toJSONString(ssoTicket), getHeaders(ssoTicket)); |
|
|
|
/** |
|
|
|
* @return |
|
|
|
* @Description 通过token获取用户信息 |
|
|
|
* @author wxz |
|
|
|
* @date 2021.01.19 10:28 |
|
|
|
*/ |
|
|
|
public UserInfoResultDTO getUserInfoByToken(String token) throws UnsupportedEncodingException { |
|
|
|
SsoTokenFormDTO ssoToken = new SsoTokenFormDTO(); |
|
|
|
ssoToken.setSsoToken(token); |
|
|
|
|
|
|
|
HashMap<String, Object> paramMap = new HashMap<>(); |
|
|
|
paramMap.put(JcetConstants.PLAT_TOKEN_NAME, token); |
|
|
|
|
|
|
|
String domain = jcetThirdplatProps.getDomain(); |
|
|
|
|
|
|
|
Result<String> result = HttpClientManager.getInstance().sendGet( |
|
|
|
domain.concat(JcetConstants.URL_GET_USER_BY_TOKEN), |
|
|
|
domain.startsWith("https://"), |
|
|
|
paramMap, |
|
|
|
getHeaders(ssoToken)); |
|
|
|
|
|
|
|
UserInfoResultDTO resultDTO = parseResult(result, UserInfoResultDTO.class); |
|
|
|
return resultDTO; |
|
|
@ -62,6 +75,7 @@ public class JcetApiService extends AbstractApiService { |
|
|
|
|
|
|
|
/** |
|
|
|
* 获取请求所需要的头信息 |
|
|
|
* |
|
|
|
* @param contentObject |
|
|
|
* @return |
|
|
|
* @throws UnsupportedEncodingException |
|
|
|