package com.skyline.electricity.interceptor;
|
|
import com.skyline.electricity.controller.*;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.beans.factory.annotation.*;
|
import org.springframework.web.client.*;
|
import com.skyline.electricity.utils.*;
|
import org.springframework.util.*;
|
import com.alibaba.fastjson.*;
|
import org.springframework.http.*;
|
import org.apache.commons.lang3.*;
|
|
public class IAMUtils
|
{
|
private static final String PREFIX = "bearer ";
|
@Autowired
|
private RemoteController remoteController;
|
|
public Object getUserInfoFromIam(final String token) {
|
final RestTemplate restTemplate = new RestTemplate();
|
final String url = PropertiesUtil.getProperty("userInfo_url");
|
String result = null;
|
final HttpHeaders headers = new HttpHeaders();
|
headers.set("Authorization", "bearer " + token);
|
final HttpEntity httpEntity = new HttpEntity((Object)null, (MultiValueMap)headers);
|
final ResponseEntity<String> responseEntity = (ResponseEntity<String>)restTemplate.exchange(url, HttpMethod.GET, httpEntity, (Class)String.class, new Object[0]);
|
if (responseEntity.getStatusCode().value() == 200) {
|
result = (String)responseEntity.getBody();
|
//System.out.println(result);
|
}
|
if ("".equals(result)) {
|
return null;
|
}
|
final JSONObject resultJson = JSONObject.parseObject(result);
|
if (resultJson.containsKey((Object)"error")) {
|
return null;
|
}
|
return resultJson.getJSONObject("data");
|
}
|
|
public String getTokenByCode(final String code) {
|
if (StringUtils.isBlank((CharSequence)code)) {
|
return null;
|
}
|
String url = PropertiesUtil.getProperty("token_url");
|
String result = null;
|
try {
|
url = url + "?code=" + code;
|
final RestTemplate restTemplate = new RestTemplate();
|
final ResponseEntity<String> responseEntity = (ResponseEntity<String>)restTemplate.getForEntity(url, (Class)String.class, new Object[0]);
|
if (responseEntity.getStatusCode().value() == 200) {
|
result = (String)responseEntity.getBody();
|
//System.out.println(result);
|
}
|
if (StringUtils.isBlank((CharSequence)result)) {
|
return null;
|
}
|
final JSONObject resultJson = JSONObject.parseObject(result);
|
if (resultJson.containsKey((Object)"error")) {
|
//System.out.println(resultJson.toJSONString());
|
return null;
|
}
|
return resultJson.getString("data");
|
}
|
catch (Exception e) {
|
e.printStackTrace();
|
return null;
|
}
|
}
|
|
public String getInfo() {
|
//System.out.println(PropertiesUtil.getProperty("userInfo_url") + PropertiesUtil.getProperty("token_url"));
|
return PropertiesUtil.getProperty("userInfo_url") + PropertiesUtil.getProperty("token_url");
|
}
|
}
|