|
|
@ -22,11 +22,13 @@ public class JcetApiService extends AbstractApiService { |
|
|
|
|
|
|
|
Logger logger = LoggerFactory.getLogger(getClass()); |
|
|
|
|
|
|
|
private JcetThirdplatProps jcetThirdplatProps; |
|
|
|
private JcetThirdplatProps jcetThirdplatCendProps; |
|
|
|
private JcetThirdplatProps jcetThirdplatGendProps; |
|
|
|
|
|
|
|
public JcetApiService(ThirdplatProps props) { |
|
|
|
this.thirdplatProps = props; |
|
|
|
jcetThirdplatProps = props.getJcet(); |
|
|
|
jcetThirdplatCendProps = props.getJcetCend(); |
|
|
|
jcetThirdplatGendProps = props.getJcetGend(); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
@ -43,12 +45,12 @@ public class JcetApiService extends AbstractApiService { |
|
|
|
SsoTicketFormDTO ssoTicket = new SsoTicketFormDTO(); |
|
|
|
ssoTicket.setSsoTicket(ticket); |
|
|
|
|
|
|
|
String domain = jcetThirdplatProps.getDomain(); |
|
|
|
String domain = jcetThirdplatCendProps.getDomain(); |
|
|
|
Result<String> result = HttpClientManager.getInstance().sendPost( |
|
|
|
domain.concat(JcetConstants.URL_GET_USER_BY_TICKET), |
|
|
|
domain.startsWith("https://"), |
|
|
|
JSON.toJSONString(ssoTicket), |
|
|
|
getHeaders(ssoTicket)); |
|
|
|
getHeaders(ssoTicket, jcetThirdplatCendProps.getAppkey(), jcetThirdplatCendProps.getAppsecret())); |
|
|
|
|
|
|
|
try { |
|
|
|
logger.info("【请求酒城e通第三方平台】getUserInfoByTicket()接口返回:{}", result.getData()); |
|
|
@ -98,15 +100,15 @@ public class JcetApiService extends AbstractApiService { |
|
|
|
* @return |
|
|
|
* @throws UnsupportedEncodingException |
|
|
|
*/ |
|
|
|
private Map<String, String> getHeaders(Object contentObject) throws UnsupportedEncodingException { |
|
|
|
private Map<String, String> getHeaders(Object contentObject, String appKey, String appSecret) throws UnsupportedEncodingException { |
|
|
|
int bodyLength = JSON.toJSONString(contentObject).getBytes("utf-8").length; |
|
|
|
|
|
|
|
Map<String, String> headers = new HashMap(); |
|
|
|
long timestamp = System.currentTimeMillis(); |
|
|
|
headers.put(JcetConstants.PLAT_HEADER_OPEN_TIMESTAMP, String.valueOf(timestamp)); |
|
|
|
headers.put(JcetConstants.PLAT_HEADER_OPEN_APP_ID, jcetThirdplatProps.getAppkey()); |
|
|
|
String encryptContent = jcetThirdplatProps.getAppkey() + timestamp + bodyLength; |
|
|
|
headers.put(JcetConstants.PLAT_HEADER_OPEN_SIGN, SignUtils.generate(encryptContent, jcetThirdplatProps.getAppsecret())); |
|
|
|
headers.put(JcetConstants.PLAT_HEADER_OPEN_APP_ID, appKey); |
|
|
|
String encryptContent = appKey + timestamp + bodyLength; |
|
|
|
headers.put(JcetConstants.PLAT_HEADER_OPEN_SIGN, SignUtils.generate(encryptContent, appSecret)); |
|
|
|
return headers; |
|
|
|
} |
|
|
|
|
|
|
|