一般遇到Request method 'GET' not supported这种问题,大家都会找相应controller下的具体方法,把get改为post之类。但是我这次是在访问静态资源,static下的html是遇到的。

说下解决思路,之前是好好的,突然同事说静态资源无法访问,控制台异常如下:

值得留意的有几点:1、PageNotFound:215;2、Request method 'GET' not supported;3、DefaultHandlerExceptionResolver:189 - Resolved exception caused by Handler execution: org.springframework.web.HttpRequestMethodNotSupportedException(这点应该是前后两个部分需要注意的)。

没办法出现了问题就要处理,首先,直接百度,主要集中在Request method 'GET' not supported加html springboot一起搜索,我这是springboot项目,把那些xml配置文件相关的解答先给排除。还真在网上搜到一篇跟这个问题几乎一模一样的,stack overflow上的,老外的问题回答肯定专业。看完后上面说是@RequestMapping(也好像是项目启动处的配置文件,具体记不清了)的url里可能只有一个/,后面遇到问题的还真找到了,在自己相应的位置加上具体一些路径就OK了。于是按照这种思路我开始整个项目搜索每个接口,根本就没有这种情况。

后来按照这个问题搜索加载不到static下的html,这时主要处理针对项目的入口,如图所示两处位置,

WebMvcConfigurerAdapter是spring给出的一些默认配置,如静态资源默认最优先访问resources下的static里的文件(html),所以我猜测可能是我哪里的配置影响了这个功能(之前这种配置一直是好的)。于是就开始疯狂搜索各种解决方案,这个又捣鼓了两天的时间,还是没搞定,把人逼疯的节奏。

前天晚上想到了另外一种可能,引用的jar包版本冲突,熟悉springboot的朋友都知道,不同版本冲突的严重性,可是我最近没有更新过pom里的东西。不管这些了,先改下boot的版本,升级到目前的最新版。下载了半天,启动后依然这个异常,其他一些引用也改了,同样不行。好吧,你牛逼,哥放弃了。

这些天是同事把项目恢复到之前的版本来回避这个问题的。昨天晚上我做了下更新,早上同事从git上pull代码之后问题又出现了。头疼,再看这个问题,还好他说昨天的代码是OK的,把昨天的代码down下来一份,放到本地。上边说了问题有三点,org.springframework.web.HttpRequestMethodNotSupportedException这个问题之前一直没看。于是,把这个东西单独拉出来个引用,设定好版本,我本地maven仓库里有三个它的版本,而且最新的修改日期也相近。不管他是不是springboot版本里带的了,拉出来试试。结果版本号一加,整个项目都起不来了。所以,这种解决思路也失败了。

就这样放弃很不甘心,总有种挫败感。没办法,把down下来的那份好的代码一个文件夹一个文件夹的往本地项目中复制。最终确定下来是其中一个类的问题,事情变简单了,浏览该类没发现异常。使用排除法,先留一个方法,然后一个一个的释放,直到问题再次出现。最终问题锁定:

大家注意,这里是name属性,正常情况下我都是写的value。问了下同事,他说以前用name的时候跟value没啥区别,都可能正常进行接口调用。试下了,好吧还真通了。把name改成value后所有的东西都正常了,html也可以正常访问。@RequestMapping中有8个属性:

我在网上搜了下,没找到介绍name的,不管了,反正平时我也没用过,如果有知道的朋友可以给我留言说明。

记另类Request method 'GET' not supported的更多相关文章

  1. Spring boot: Request method 'DELETE' not supported, Request method 'PUT' not supported, Request method 'POST' not supported

    GET,POST,PUT,DELETE, Spring都支持,不要怀疑Spring, 一定是前端发送的rest 请求和后端的响应不匹配, 查找原因以及解决办法, 很简单 用chrome打开F12控制台 ...

  2. org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'PUT' not supported

    1:先上控制台报错信息 org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'PUT' not ...

  3. WARN PageNotFound:208 - Request method 'POST' not supported

    在地址栏输入网址访问页面 ,用的是GET方法. 在用ajax接收后台数据,根据返回值进行提示或页面跳转时报:WARN PageNotFound:208 - Request method 'POST' ...

  4. SpringMVC框架出现 405 request method post not supported 的解决方法

    在SpringMVC框架中当使用post请求服务,然后请求成功转到一个静态文件,如html,htm等网页时.页面出现405 request method post not supported错误,只要 ...

  5. Request method 'POST' not supported错误和解决方法

    在使用SpringBoot的时候,在html页面用form表单post提交数据的时候报错: Request method 'POST' not supported 错误解析: 我是用的前端页面是HTM ...

  6. springmvc访问静态资源出现Request method 'GET' not supported

    答案最后.:D 默认的访问的URL都会被DispatcherServlet所拦截. 这里说一下如何配置springmvc访问静态文件. <mvc:default-servlet-handler/ ...

  7. Request method 'GET' not supported

    Request method 'GET' not supported 错误原因: GET请求不被允许. 解决方法: 1.从客户端入手.假设浏览器中的js用了ajax发起异步请求GET,将GET改为PO ...

  8. 常见踩坑案例(二)-Request method 'POST' not supported

    一 前言 最近涉及到与前后端的数据对接,按道理来说没一点压力结果被一前端童鞋带坑里去了(不过也是很久没写过这种前后端分离进行联调的事情了,如果是一个人全套弄的话就不会出现下面问题). 二 Reques ...

  9. 警告: Request method 'POST' not supported的原因之一

    警告: Request method 'POST' not supported是经常遇到的,这里记录一下我经常遇到的一种情况,以免忘记. 我使用拦截器拦截所有请求,然后列出不拦截的请求.有时候由于自己 ...

随机推荐

  1. 台湾ML笔记--1.2 formalize the learning probelm

    Basic notations input:     x∈χ  (customer application) output:   y∈y  (good/bad after approving cred ...

  2. 活动的生命周期 Android

    1.运行程序 onCreate().onStart()和 onResume() 2.跳转到非弹框视图控制器 onPause()和 onStop() 返回上一个视图控制器(没被回收) onRestart ...

  3. App间常用的五种通信方式

    1.URL Scheme 2.Keychain 3.UIPasteboard剪切板 4.UIDocumentInteractionController 5.local socket 详见: 转自:ht ...

  4. 【jQuery】 选择器

    [jQuery] 选择器 资料: w3school  http://www.w3school.com.cn/jquery/jquery_ref_selectors.asp 1. 标签选择器 : $(& ...

  5. ORA-12546: TNS: 权限被拒绝(ORA - 12546 TNS: Permission Denied)

    这个问题上网一查大都是说权限之类的问题,本人在经过第二次折腾之后发现,其实是自己的Oracle客户端工具在破解过程中被自己用防火墙禁止访问网络了,自己还在另一篇博文里记录过,竟然忘光了,BS一下自己! ...

  6. adb常用命令(手机测试)

                                                   ADB安装与常用命令详解 一.ADB意义 adb的全称为Android Debug Bridge,就是起到 ...

  7. Gradle下载依赖jar包位置修改

    gradle会下载相关需要依赖的jar包,默认的本地存放地址是:C:/Users/(用户名)/.gradle/caches/modules-2/files-2.1,很多人和我一样不愿意放在C盘,所以需 ...

  8. mysql数据库----Pymysql

    本节重点: pymysql下载和使用 sql注入 增.删.改:conn.commit() 查:fetchone.fetchmany.fetchall 一.pymysql的下载和使用 之前我们都是通过M ...

  9. [Binary Search] Leetcode 35, 74

    35. Search Insert Position Description Given a sorted array and a target value, return the index if ...

  10. 数据结构-排序-shell排序

    shell排序 首先,希尔排序适用于待排序列关键有序. 接下来一步步图解SHELL排序 我为了方便理解内部操作.我先把代码输出整理下. #include<iostream> #includ ...