前端Vue+axios 后端SSM框架 联调问题
1 跨域问题
2 处理restful风格
前端代码
url带参数 id号和active状态
// 监听 switch开关 状态改变
async userStateChanged (userInfo) {
// console.log(userInfo)
const { data: res } = await this.$http.put(
`users/${userInfo.userId}/state/${userInfo.active}`
)
if (res.meta.status !== 200) {
userInfo.active = !userInfo.active
return this.$message.error('更新用户状态失败')
}
this.$message.success('更新用户状态成功!')
}
SpringMVC代码
@PathVariable("id") 获取url中参数
@RequestMapping(value = "/users/{id}/state/{state}",method = RequestMethod.PUT)
@ResponseBody
private Map<String, Object> updateState(HttpServletRequest request,@PathVariable("id") Integer id,@PathVariable("state") Boolean state){
}
Note
注意参数类型,类型不一致会导致400报错,特别是True/false是Boolean,不是String和Int