zoukankan      html  css  js  c++  java
  • spring RestTemplate提交json格式数据

     RestTemplate是spring封装的,使用起来更加简单。

    接收:

        @RequestMapping(value = "/restTemplateTest.do", method = RequestMethod.POST)
        public @ResponseBody
        Map<String, Object> restTemplateTest(HttpServletRequest request, @RequestBody Map<String, Object> params) throws Exception {
            Map<String, Object> result = getParams(request);
            try {
                System.out.println(params);
                result.put("isLog", false);
                result.put("success", true);
                result.put("msg", "测试成功");
            } catch (Exception e) {
                e.printStackTrace();
                result.put("isLog", false);
                result.put("success", false);
                result.put("msg", "测试失败:" + e.getMessage());
            }
            return result;
        }

    这边注意可以用@RequestBody注解获取请求体参数

    请求:

        @RequestMapping(value = "/testRestTemplate.do", method = RequestMethod.POST)
        public @ResponseBody
        Map<String, Object> testRestTemplate(HttpServletRequest request) throws Exception {
            Map<String, Object> result = new HashMap<>();
            try {
                SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
                factory.setReadTimeout(10000);//单位为ms
                factory.setConnectTimeout(10000);//单位为ms
                RestTemplate restTemplate = new RestTemplate(factory);
                String url = "http://192.168.71.179:8080/xxxx/restTemplateTest.do";
                HttpHeaders requestHeaders = new HttpHeaders();
                requestHeaders.add("Content-Type", "application/json;charset=utf-8");
                Map<String, Object> map = new HashMap<>();
                map.put("name", "福州陈冠希");
                HttpEntity<Map<String, Object>> httpEntity = new HttpEntity<Map<String, Object>>(map, requestHeaders);
    //url 方法类型 请求体参数 返回值类型 ResponseEntity
    <Map> exchange = restTemplate.exchange(url, HttpMethod.POST, httpEntity, Map.class); Map body = exchange.getBody(); System.out.println(JSON.toJSONString(body)); result.put("isLog", false); result.put("success", true); result.put("msg", "测试成功"); } catch (Exception e) { e.printStackTrace(); result.put("isLog", false); result.put("success", false); result.put("msg", "测试失败:" + e.getMessage()); } return result; }
     
  • 相关阅读:
    找数字(递归,二分查找)
    P1759 通天之潜水(不详细,勿看)(动态规划递推,组合背包,洛谷)
    第五讲 二维费用的背包问题(粗糙,勿点)
    VIM基础操作方法汇总
    P2347 砝码称重(动态规划递推,背包,洛谷)
    第三讲 多重背包问题(对背包九讲的学习)
    第二讲 完全背包问题(对背包九讲的学习)
    python 日期、时间、字符串相互转换
    Resource注解无法导入依赖使用javax.annotation的注解类
    Spring的配置文件找不到元素 'beans' 的声明
  • 原文地址:https://www.cnblogs.com/chenmz1995/p/12179551.html
Copyright © 2011-2022 走看看