zoukankan      html  css  js  c++  java
  • 【RestTemplate】post请求示例

    引包:

    import org.springframework.util.LinkedMultiValueMap;
    import org.springframework.util.MultiValueMap;
    import org.springframework.web.client.RestTemplate;

    代码:

            RestTemplate restTemplate = new RestTemplate();
            MultiValueMap<String,Object> paramMap=new LinkedMultiValueMap<String,Object>();
            paramMap.add("name", "何杨");
            paramMap.add("pswd", "1");
            String rsps=restTemplate.postForObject("http://localhost:8080/mediacool/probeUser", paramMap, String.class);
            System.out.println(rsps);

    响应:

    {"Interface ID":"8973","startTime":"2021-10-31 11:51:30.261381200","visitorIp":"192.168.0.101","code":"303","msg":"确认用户名和密码无误","userInfo":{"id":1,"name":"何杨","email":"1@2.3"},"endTime":"2021-10-31 11:51:30.651390"}

    附:接口代码:

    package com.hy.myapp.rest;
    
    import java.time.LocalDate;
    import java.time.LocalTime;
    import java.util.LinkedHashMap;
    import java.util.Map;
    
    import javax.servlet.http.HttpServletRequest;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.bind.annotation.RestController;
    
    import com.hy.myapp.Entity.User;
    import com.hy.myapp.service.UserService;
    import com.hy.myapp.util.RestUtil;
    
    /**
     * 用于用户服务的Restful控制器
     * @author hy
     * 2021年10月31日
     */
    @RestController
    public class UserRestCtrl {
        @Autowired
        private UserService userService;
        
        @RequestMapping(value="/probeUser", method=RequestMethod.POST)
        public Map<String,Object> probeUser(String name,String pswd,HttpServletRequest rqst){
            Map<String,Object> retvalMap=new LinkedHashMap<String,Object>();
            
            retvalMap.put("Interface ID", "8973");
            
            String startTime=LocalDate.now()+" "+LocalTime.now();
            retvalMap.put("startTime", startTime);
            
            String visitorIp=RestUtil.findVisitorIpFrom(rqst);
            retvalMap.put("visitorIp", visitorIp);
            
            if(name==null) {
                retvalMap.put("code", "301");
                retvalMap.put("msg", "name不可缺失");
                String endTime=LocalDate.now()+" "+LocalTime.now();
                retvalMap.put("endTime", endTime);
                return retvalMap;
            }
            
            if(pswd==null) {
                retvalMap.put("code", "302");
                retvalMap.put("msg", "password不可缺失");
                String endTime=LocalDate.now()+" "+LocalTime.now();
                retvalMap.put("endTime", endTime);
                return retvalMap;
            }
            
            // 到此name、pswd都有了
            User user=userService.searchUserByNamePswd(name, pswd);
            if(user!=null) {
                retvalMap.put("code", "303");
                retvalMap.put("msg", "确认用户名和密码无误");
                retvalMap.put("userInfo", user);
                
                String endTime=LocalDate.now()+" "+LocalTime.now();
                retvalMap.put("endTime", endTime);
                
                return retvalMap;
            }else {
                retvalMap.put("code", "304");
                retvalMap.put("msg", "用户名或密码有误");
                
                String endTime=LocalDate.now()+" "+LocalTime.now();
                retvalMap.put("endTime", endTime);
                
                return retvalMap;
            }
        }
    }

    END

  • 相关阅读:
    【剑指Offer】53、表示数值的字符串
    【剑指Offer】52、正则表达式匹配
    【剑指Offer】51、构建乘积数组
    【双系统】windows 和 Ubuntu 双系统安装
    【ubuntu子系统】使用windows自带的ubuntu子系统
    【剑指Offer】50、数组中重复的数字
    【剑指Offer】49、把字符串转换成整数
    【剑指Offer】48、不用加减乘除做加法
    【剑指Offer】47、求1+2+3+4+···+n
    【maven】成功生成jar包,提示找不到主类?
  • 原文地址:https://www.cnblogs.com/heyang78/p/15489008.html
Copyright © 2011-2022 走看看