火狐模擬POST請求的兩種方式java
傳參方式一:參數名1=值1&參數名2=值2……app
示例:請求信息,注意頭部信息設置this
接收部分--代碼code
@RestController public 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的形式傳參,注意頭部信息token
接收部分--代碼get
@RestController public 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,以下class
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.當傳參個數比較少時,採用第一種方式;反之,採用第二種方式。model
2.當所傳的參數已在工程中的model中時,採用第二種方式,這種狀況,不須要創建單獨的實體接收bean。