RestTemplate

发布时间:2022-07-05 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了RestTemplate脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

   方式一:

Map<String, Object> params = new HashMap<>();params.put("appId", "xxx");params.put("appSecret", "yyyyyyyyyy");String url = "http://test.COM/sso/oPEn/token?appId={appId}&appSecret={appSecret}";ResponseEntITy<SsoResult<String>> responseEntity = restTemplate().exchange(url, HttpMethod.GET, null, parameterizedTypeReference, params);方式二:
String url = "http://test.com/sso/open/token";map<String, Object> params = new HashMap<>();params.put("appId", "xxx");params.put("appSecret", "yyyyyyy");UricomponentsBuilder builder = UriComponentsBuilder.FromHttpUrl(url);params.entrySet().stream().foreach(o -> builder.queryParam(o.getKey(),o.getValue()));String url2 = builder.build().encode().toString();ParameterizedTypeReference parameterizedTypeReference = new ParameterizedTypeReference<SsoResult<String>>() {};ResponseEntity<SsoResult<String>> responseEntity = restTemplate().exchange(url2, HttpMethod.GET, null, parameterizedTypeReference);SsoResult<String> ssoResult = responseEntity.getBody();

Headers:
PRivate HttpHeaders getHeaders() {    HttpHeaders headers = new HttpHeaders();    headers.add("content-type", "application/json");    AccessToken accessToken = AccessToken.accessToken;    headers.add("authorization", accessToken.getaccess_token());    return headers;}

ObjectMapper:

先获取为String类型,再用ObjectMapper转换为对象,可以用于调试时使用。ResponseEntity<String> responseEntity = restTemplate.exchange(usersUrl, HttpMethod.GET, requestEntity, String.class, params);String body = responseEntity.getBody();IdaasResponse<List<UserInfo>> response = objectMapper.readValue(body, new TypeReference<IdaasResponse<List<UserInfo>>>() {});return response.getData();完整代码如下:
String usersUrl = "${idaas.url}/api/users?limit={limit}&skip={skip}";HttpHeaders headers = getHeaders(); // 见上面的getHeaders()
Map<String, Object> params = new HashMap<>();params.put("limit", limit);params.put("skip", skip);HttpEntity<String> requestEntity = new HttpEntity<>(null, headers);ResponseEntity<String> responseEntity = restTemplate.exchange(usersUrl, HttpMethod.GET, requestEntity, String.class, params);String body = responseEntity.getBody();IdaasResponse<List<UserInfo>> response = objectMapper.readValue(body, new TypeReference<IdaasResponse<List<UserInfo>>>() {});return response.getData();

脚本宝典总结

以上是脚本宝典为你收集整理的RestTemplate全部内容,希望文章能够帮你解决RestTemplate所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。