使用RESTful风格执行delete功能报的错误

1、使用RESTful风格处理delete请求方式的表单时

            <a @click="deleteEmployee" th:href="@{'/employee/'+${employee.id}}">delete</a>
            <a href="">update</a>
        </td>
    </tr>
</table>

<form id="delete_from" method="post">
    <input type="hidden" name="_method" value="delete">
</form>
<!--引入vue.js-->
<script type="text/javascript" th:src="/static/js/vue.js"></script>
<script type="text/javascript">
    //创建vue对象
    var vue = new Vue({
        el: "#dataTable",
        methods: {
            //event表示当前事件
            deleteEmployee: function (event) {
                //根据id获取表单元素
                let deleteFrom = document.getElementById("delete_from");
                //将触发点击事件的超连接的href属性赋值给表单的action
                deleteFrom.action = event.target.href;
                //提交表单
                deleteFrom.submit();
                //取消超链接的默认行为
                deleteFrom.preventDefault();
            }
        }
    });
</script>
  • 当写完delete单机事件时,启动服务器会出现
HTTP Status 405 - Request method 'GET' not supported
type Status report

message Request method 'GET' not supported

description The specified HTTP method is not allowed for the requested resource.

Apache Tomcat/8.0.50

以上错误时,说明我们在表单设置的delete请求没有发送,需要重新打包maven,但是还是报了405的错误
这时候我们在springMVC的配置文件中加上这一句

    <!--开放对静态资源的访问-->
    <mvc:default-servlet-handler/>
  • vue.js静态资源是先被springMVC先解析的,当找不到时,才会让默认的servlet来解析,找到了就执行,找不到就会报
17:19:07.592 [http-apr-8080-exec-86] DEBUG org.springframework.web.servlet.handler.SimpleUrlHandlerMapping - Mapped to org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler@228ffd79
17:19:07.594 [http-apr-8080-exec-86] DEBUG org.springframework.web.servlet.DispatcherServlet - Completed 404 NOT_FOUND
  • 这是日记模式,当开发了对静态资源的访问时,就会执行成功
  • 如下】
    在这里插入图片描述
    删除成功
    在这里插入图片描述
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值