package cn.timer.api.utils.baidu; import cn.timer.api.dto.baidu.BaiduTicResumeDto; import com.google.gson.Gson; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.web.client.RestTemplate; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * @author wuqingjun * @email 284718418@qq.com * @date 2022/3/29 */ @Component public class BaiduTicUtil { @Value("${config-8timer.baidu-tic.appid}") private String appid; @Value("${config-8timer.baidu-tic.secret}") private String secret; /** * 获取百度token * @return */ public String getBaiduAccessToken(){ StringBuffer url = new StringBuffer("https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id="); url = url.append(appid).append("&client_secret=").append(secret); ResponseEntity<String> response = new RestTemplate().exchange(url.toString(), HttpMethod.GET, null, String.class); return new Gson().fromJson(response.getBody(), HashMap.class).get("access_token").toString(); } public ResponseEntity<String> getResumeByCvParser(BaiduTicResumeDto baiduTicResumeDto){ String url = "https://aip.baidubce.com/rpc/2.0/recruitment/v1/cvparser?access_token="+getBaiduAccessToken(); Map<String, Object> param = new HashMap<>(); param.put("resume", baiduTicResumeDto); MultiValueMap<String, String> headers = new LinkedMultiValueMap<>(); List<String> list = new ArrayList<>(); list.add("Content-Type"); list.add("application/json"); headers.put("header", list); HttpEntity requestEntity = new HttpEntity(param, headers); return new RestTemplate().exchange(url, HttpMethod.POST,requestEntity, String.class); } }