访问企业微信审批单详情
第一种: 使用 cn.hutool.http
Map<String,Object> body = new HashMap<>();
body.put("sp_no","参数");
String result = HttpUtil.post("请求路径?access_token="+accessToken.getAccessToken(),JSONObject.toJSONString(body));
if (result != null) {
JSONObject resultJson = JSON.parseObject(result);
// 出错返回码,为0表示成功,非0表示调用失败
if (resultJson.getInteger("errcode") == 0) {
System.out.println("resultJson"+resultJson);
} else {
log.error("调用接口失败,{}", resultJson.get("errmsg"));
}
}
第二种:使用springboot便捷访问远程http服务的方法 org.springframework.web.client.RestTemplate
- 新建restTemplate实例可以直接new也可以使用springboot提供的RestTemplateBuilder。
@Configuration
public class RestTemplateConfig {
@Bean
public RestTemplate restTemplate(RestTemplateBuilder builder){
return builder.build();
}
}
使用类中注入testtemplate
@Component
public class ApproveTask{
@Autowired
private final RestTemplate restTemplat;
public void getHttpPostDataInfo(){
ObjectMapper objectMapper = new ObjectMapper();
ObjectNode params = objectMapper.createObjectNode();
params.put("sp_no", oaApprove.getSpNo());
HttpEntity<String> dataFormEntity = new HttpEntity<String> (params.toString(), headers);
OaApproveDetail oaApproveDetail = restTemplate.postForObject("url" + "?access_token=" + accessToken.getAccessToken() + "", dataFormEntity, oaApproveDetail.class);
if (null == oaApproveDetail|| 0 != oaApproveDetail.getErrcode()) {
log.warn("获取审批详情数据异常,返回状态码:{}", 映射消息实体.getErrcode());
}
System.out.println(oaApproveDetail.getinfo().getApplyData());
}
}