java - ajax post提交error 415 Unsupported Media Type
本文介绍了java - ajax post提交error 415 Unsupported Media Type的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
做程序最怕的就是一样的代码,不一样的结果.真的火大
ajax提交415 error
很郁闷的是,同样的请求方式,别的方法就行,这个不行....
发生错误的调用过程图片:
正确的调用过程图片:
都用同一种写法,为什么会有成功跟失败的两种结果呢?
错误的后台处理代码:
@RequestMapping(value = "add",method = RequestMethod.POST)
@ResponseBody
public ResultBean add(HttpServletRequest request,NdpApply ndpApply) {
Account account = loadAccountFromSession(request);
if (account == null) {
return createdResultBean("0",null,"");
}
NonDirectoryProcurementApply apply = ndpApply.getApply();
if(apply==null){
return createdResultBean(ERROR,null,"添加失败");
}
apply.setCreatorName(account.getAccountName());
apply.setCreateTime(new Date());
apply.setDeleteStatus(false);
apply.setStatus(NonDirectoryProcurementApplyStatusEnum.WAIT_COMMIT.getCode());
nonDirectoryProcurementApplyMapper.insertSelective(apply);
if(ndpApply.getAttachmentList()!=null&&ndpApply.getAttachmentList().size()>0){
nonDirectoryProcurementApplyAttachmentMapper.batchInsert(ndpApply.getAttachmentList());
}
return createdResultBean(SUCCESS,apply.getId(),"添加成功");
}
--------------------------------------------------------------------
正确的后台处理代码:
@RequestMapping(value = "/update",method = RequestMethod.POST)
@ResponseBody
public ResultBean update(HttpServletRequest request,ApprovalNodeTypeListVo approvalNodeTypes) throws Exception {
Long tenantId = loadAccountFromSession(request).getTenantId();
ApprovalType approvalType = approvalTypeService.selectByTypeCode(tenantId,approvalNodeTypes.getTypeCode());
Long typeId = approvalType.getId();
approvalNodeTypeService.deleteByTypeId(typeId);
if(approvalNodeTypes!=null&&approvalNodeTypes.getApprovalNodeTypes()!=null&&approvalNodeTypes.getApprovalNodeTypes().size()>0){
for(ApprovalNodeType nodeType:approvalNodeTypes.getApprovalNodeTypes()){
nodeType.setApprovalTypeId(typeId);
}
approvalNodeTypeService.batchInsert(approvalNodeTypes.getApprovalNodeTypes());
}
return createdResultBean(SUCCESS,null,"修改成功");
}
------------------------------------------------------------------------------
错误的请求入参:
@Getter
@Setter
public class NdpApply {
NonDirectoryProcurementApply nonDirectoryProcurementApply;
List<NonDirectoryProcurementApplyAttachment> attachmentList;
}
正确的请求入参:
@Getter
@Setter
public class ApprovalNodeTypeListVo {
List<ApprovalNodeType> approvalNodeTypes;
Integer typeCode;
}
求大神帮忙解答疑惑,我不想用设置'Content-Type','application/json' 这种方式,只想搞明白,为什么同样的请求方法有不同的结果?
解决方案
你把mvc的log设置为debug,分析下错误发生的地方,同时看看filter链和handler是否正确映射到你写的方法上,猜测可能映射到其他方法上了。
这篇关于java - ajax post提交error 415 Unsupported Media Type的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文