400 Bad Request ssm & ajax

目前我遇到过的情况有以下几种:

1.前端js代码传递的数据中,属性名称与后端Java类(此处类名称为Admin)中变量不一致(如下图加引号的userid,password全称以及大小写和Admin类中需一致);

2.Admin类中没有无参构造函数(最无声无息坑爹的);

3.getter和setter函数定义有误,我之前是有两个定义相似的变量,自动生成getter和setter时函数名重复,导致了函数重载,框架构造对象时无法确定调用的函数

4.前端包装的数据格式等有问题,在浏览器中如下图处可查看数据打包方式

前端代码

		var admin = {
				"userid":userid,
				"password":password,
		};
		var jsonData = JSON.stringify(admin);
$.ajax({
			async : false,
			type : "post",
			url : "adminLogin",
			data : jsonData,
			dataType : "JSON",
			contentType : "application/json;charset=UTF-8",
			success : function(result) {// result返回的内容
				if (result.res == 0)
					alert("账号错误");
				if (result.res == 2)
					alert("密码错误");
				alert("登录成功");
			},
			error : function() {
				// 请求失败,执行的操作
				alert("提交失败");
			}
		});

后端代码


	@ResponseBody
	@RequestMapping("/adminLogin")
	public String adminLogin(@RequestBody Admin admin, HttpSession session){
		Admin atmp = adminService.getAdminByUserid(admin.getUserid());
		JSONObject json = new JSONObject();
		if(atmp == null){
			json.put("res", 0);			//no such user
			return json.toJSONString();
		}
		if(atmp.getPassword().equals(admin.getPassword())){
			json.put("res", 1);
			session.setAttribute("user", atmp);
			return json.toJSONString();
		}
		json.put("res", 2);				//password is wrong
		return json.toJSONString();
	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值