火狐模拟POST请求的两种方式
传参方式一:参数名1=值1&参数名2=值2……
示例:请求信息,注意头部信息设置
接收部分--代码
@RestControllerpublic class UserController { @Autowired private UserService userService; /** * 用户登录 * * @param loginInfo * 电话/邮件 * @param password * 密码 * @param appToken * appToken * @return 用户登录信息 */ @RequestMapping(value = "/login",method = RequestMethod.POST) public ResultObject login(@RequestParam("loginInfo") String loginInfo, @RequestParam("password") String password, @RequestParam("appToken") String appToken) { System.out.println("请求路径:/login"+"\n"+"{"+"\n"+ "loginInfo:"+loginInfo+"\n"+ "password:"+password+"\n"+ "appToken:"+appToken+"\n"+ "}" ); ResultObject ro = null; return ro; }}
接收部分--打印结果
传参方式2:以body的形式传参,注意头部信息
接收部分--代码
@RestControllerpublic class UserController { @Autowired private UserService userService; /** * 用户登录 * * @param loginInfo * 电话/邮件 * @param password * 密码 * @param appToken * appToken * @return 用户登录信息 */ @RequestMapping(value = "/login",method = RequestMethod.POST) public ResultObject login(@RequestBody UserLogin user) { System.out.println("请求路径:/login"+"\n"+"{"+"\n"+ "loginInfo:"+user.getLoginInfo()+"\n"+ "password:"+user.getPassword()+"\n"+ "appToken:"+user.getAppToken()+"\n"+ "}" ); ResultObject ro = userService.addLogin(user.getLoginInfo(), user.getPassword(),user.getAppToken()); return ro; }}
备注:由于传的是一个body过来,所以需要使用一个对象接收,该实例的对象为UserLogin,如下
public class UserLogin { // 登录信息 private String loginInfo; // 密码 private String password; //app_token private String appToken; public String getLoginInfo() { return loginInfo; } public void setLoginInfo(String loginInfo) { this.loginInfo = loginInfo; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getAppToken() { return appToken; } public void setAppToken(String appToken) { this.appToken = appToken; }}
总结:
1.当传参个数比较少时,采用第一种方式;反之,采用第二种方式。
2.当所传的参数已在工程中的model中时,采用第二种方式,这种情况,不需要建立单独的实体接收bean。