zoukankan      html  css  js  c++  java
  • 微服务中的rpc 请求写法

    1、采用restmplate 的postForObject

    RestTemplate template = new RestTemplate();
                HttpEntity<List<Map<String, Object>>> request = new HttpEntity<>(paramList, this.getHeaders());
                Map map = template.postForObject(url, request, Map.class);
    

     url: 对外发送请求的url地址

    request:请求的参数,带请求头。比如这里是参数类型是一个 List<Map<String, Object>>

    map.class : 请求返回值的类型 这里返回值为一个map 

    2、如果传入的参数 param是json对象,postForObject 有时候会报错,此处的docVo 为json对象;

    同时,返回值 不是简单的map,list类型,而是对象,则此时需要用到另外一个方法ParameterizedTypeReference 来创建一个返回值包装对象

    typeRef = new ParameterizedTypeReference<BaseResultVo<PageDataVo<DocBrowseRankVo>>>() {};

    3 、调用 restTemplate.exchange(requestUrl, HttpMethod.POST, request, typeRef);
    HttpEntity<DocVo> request = new HttpEntity<>(docyVo, Common.getHeaders());
            ParameterizedTypeReference<BaseResultVo<PageDataVo<DocBrowseRankVo>> > typeRef = new ParameterizedTypeReference<BaseResultVo<PageDataVo<DocBrowseRankVo>>>() {};
            ResponseEntity<BaseResultVo<PageDataVo<DocBrowseRankVo>>> responseEntity = restTemplate.exchange(requestUrl, HttpMethod.POST, request, typeRef);
            return responseEntity.getBody();
    

      

  • 相关阅读:
    最小生成树+BFS J
    Noip 2016
    舒适的路线 (code[vs] 1001)
    拦截导弹 (加了神奇的位运算)
    逃出克隆岛 (codevs 2059)
    回家(洛谷 P1592)
    热浪
    城堡
    笔记 (一道正解思路巧妙的题)
    脱水缩合
  • 原文地址:https://www.cnblogs.com/Andrew520/p/9397649.html
Copyright © 2011-2022 走看看