###正在建设的项目中遇到了关于前后端传值的问题,现在汇总成一个Blog,方便以后翻阅
传递字符串
// SpringBoot 后端
@PostMapping(value = "/URL")
public String select(@RequestParam("KEY") String key) ~~throws IOException~~ {
//AJAX前端
$.ajax({
url:"URL",
type:"POST",
data:{KEY:VALUE},
dataType:"JSON",
success:function (data) {
}
})
传递对象
// SpringBoot 后端
@RequestMapping(value = "/sendMail", method = RequestMethod.POST)
@ResponseBody
public String snoLogin(@RequestBody User user) {
}
//AJAX前端
$.ajax({
url: "sendMail",
type: "POST",
data: JSON.stringify({user: user}),
contentType: "application/json;charset=UTF-8",
dataType: "text",
success: function (data) {
}
});
可以使用自定对象进行传值,以下内容转载至https://yremp.live/spring-boot-ajax/
function submit(){
var username = $("#username").val();
var password = $("#password").val();
var list ={
username: username,
password: password
};
$.ajax({
//请求方式
type: "POST",
//请求的媒体类型
contentType: "application/json;charset=UTF-8",
//请求地址
url: "/user/json",
//数据,json字符串
data: JSON.stringify(list),
//请求成功
success: function (res) {
if (res.status === 200) {
console.log(res);
} else {
}
}
});
}
@Controller
public class IndexController {
@RequestMapping("/")
public String index(){
return "login.html";
}
@PostMapping("/user/json")
@ResponseBody
public JSONObject user(@RequestBody JSONObject user){
String username = user.get("username").toString();
String password = user.get("password").toString();
System.out.println("使用JSONObject接收:");
System.out.println("用户名:"+username);
System.out.println("密码:"+password);
JSONObject result = new JSONObject();
result.put("status",200);
result.put("message","服务端已经收到请求");
return result;
}
@PostMapping("/user/dto")
@ResponseBody
public JSONObject user(@RequestBody UserDTO user){
String username = user.getUsername();
String password = user.getPassword();
System.out.println("使用自定义的DTO接收:");
System.out.println("用户名:"+username);
System.out.println("密码:"+password);
JSONObject result = new JSONObject();
result.put("status",200);
result.put("message","服务端已经收到请求");
return result;
}
}
//实体类
public class UserDTO {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
END