zoukankan      html  css  js  c++  java
  • restTemplate调用参数类型为form Data类型的接口 用LinkedMultiValueMap封装参数

    springweb提供了调用远程接口模板restTemplate,以rest方式请求接口非常方便.下面针对post请求做两种说明:

    1.如果调用的接口参数用@RequestBody标识

      此种在postman中传参方式是选择json格式,编写json格式参数即可,

           对应的restTemplate.postForObject(url, requestBody, Result.class); 默认调用的时候就是将requestBody实体类转为json格式调取。

    2.如果调用的接口参数用@RequestParam标识

        此种在postman中传参方式选择form-data,然后按需传参(不是必传参数可以不传),

       对应的restTemplate.postForObject(url, requestBody, Result.class);将会调取失败!

       解决办法:使用LinkedMultiValueMap封装要穿的参数:

         MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
            //按需传参,不是必填的参数可以不传
            map.add("order_id", submit.getOrderId());
            map.add("userName",submit.getUserName());
            //发送请求,设置请求返回数据格式为String
            ResponseEntity<String> responseEntity = restTemplate.postForEntity("http:xxx.xx", request, String.class);
  • 相关阅读:
    发送邮件
    php防止表单重复提交
    mysql 优化之注意
    mysqldump
    项目中下拉框链接问题
    css在IE和Firefox下的兼容性
    利用curl并发来提高页面访问速度
    修改linux下mysql目录权限
    ajax跨域
    wireshark抓包
  • 原文地址:https://www.cnblogs.com/fangyan1994/p/12178739.html
Copyright © 2011-2022 走看看