php ajax提交报异常,ajax提交 报异常 Request method 'POST' not supported

本文探讨了一种前端JavaScript提交订单时遇到的错误:'POST'请求不被支持。通过分析前端AJAX代码和后端Java控制器方法,发现了问题所在。解决方案是删除前端请求的type:'POST'属性和后端@RequestMapping注解中的method=RequestMethod.POST参数,使得默认的POST请求能够正常执行。这为处理类似前端与后端交互问题提供了参考。
摘要由CSDN通过智能技术生成

$(function(){

// 订单取消

$("#cancel").click(function() {

if (confirm("${message("yee.member.order.cancelConfirm")}")) {

$.ajax({

url: "${base}/member/order/cancel.jhtml?sn=${order.sn}",

type: "POST",

dataType: "json",

cache: false,

success: function(message) {

if (message.type == "success") {

location.reload(true);

} else {

$.message(message);

}

}

});

}

return false;

});

});

页面提交方法如上,后台如下:

/**

* 取消

*/

@RequestMapping(value = "/cancel", method = RequestMethod.POST)

public @ResponseBody

Message cancel(String sn) {

Order order = orderService.findBySn(sn);

if (order == null) {

return ERROR_MESSAGE;

}

Member member = memberService.getCurrent();

if (!member.equals(order.getMember())) {

return ERROR_MESSAGE;

}

if (order.hasExpired() || (!Order.Status.pendingPayment.equals(order.getStatus()) && !Order.Status.pendingReview.equals(order.getStatus()))) {

return ERROR_MESSAGE;

}

if (orderService.isLocked(order, member, true)) {

return Message.warn("yee.member.order.locked");

}

orderService.cancel(order);

return SUCCESS_MESSAGE;

}

前台提交报出:Request method 'POST' not supported。

解决方法:前台去掉type: "POST",后台去掉 method = RequestMethod.POST。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值