springmvc使用REST出現(xiàn):Request?method?'PUT'?not?supported問題
使用REST出現(xiàn):Request method 'PUT' not supported
在SpringMVC學(xué)習(xí)過程中,練習(xí)使用REST風(fēng)格的進(jìn)行簡(jiǎn)單的CRUD的DEMO的時(shí)候,在執(zhí)行Edit操作后出現(xiàn)了如下圖405的錯(cuò)誤。在提交頁面的action中的請(qǐng)求前加上${pageContext.request.contextPath }

這類錯(cuò)括 method(PUT,DELETE,POST)not supported,原因很有可能就是后臺(tái)中的uri(即handler類中)與前端 的uri不一致導(dǎo)致的。
發(fā)現(xiàn)這種錯(cuò)誤如何進(jìn)行修改?
解決辦法
將項(xiàng)目部署后,運(yùn)行起來,鍵盤上按(F12)打開瀏覽器的開發(fā)者工具。當(dāng)點(diǎn)擊edit并且進(jìn)行修改操作后提交頁面,這個(gè)時(shí)候報(bào)錯(cuò)。
可以利用開發(fā)者工具查看此時(shí)的連接地址:
步驟如下
點(diǎn)開網(wǎng)絡(luò)----à看下面圖片①標(biāo)注的位置(根據(jù)自己的情況)-----à再看②(可以看到,Request URL:http://localhost:8000/springmvc02/add3),記住它---->查看后端代碼RequestMaping映射的URL,是否一致

找到method為PUT,同時(shí)value="/emp"的url,而我這里寫的是"/add3”,路徑不對(duì)當(dāng)然就找不到頁面了,所以報(bào)錯(cuò)了。
所以改為:
@RequestMapping(value="/add3",method=RequestMethod.PUT)即可。
@RequestMapping(value = "/emp",method= RequestMethod.PUT)
?????????????????? public String updateEmp(Employee employee) {
??????????????????????????? employeeDao.save(employee);???????????????????????????
??????????????????????????? return "redirect:/emps";
?????????????????? }總而言之,解決這類的辦法就是看@RequestMapping(value="/url1",method=RequestMethod.method*)中的url與前端頁面中地址是否一致的問題。
根本原因還是對(duì)SpringMVC機(jī)制的原理理解不夠透徹,再去多理解理解,弄懂即可?。?!
Request method 'PUT'/ 'POST' not supported之可能的一個(gè)原因
如下所示
我一直遇到下面這個(gè)錯(cuò)誤,在網(wǎng)上查了很多原因,在服務(wù)器上測(cè)試也沒問題,但在本地就一直報(bào)錯(cuò)。
沒想到是因?yàn)槲覜]有為項(xiàng)目設(shè)置application context,設(shè)置好就能正常訪問了。。
Request method 'PUT'/ 'POST' not supported

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 如何利用Spring?MVC實(shí)現(xiàn)RESTful風(fēng)格
- springmvc Rest風(fēng)格介紹及實(shí)現(xiàn)代碼示例
- SpringMVC開發(fā)restful API之用戶查詢代碼詳解
- Spring MVC利用Swagger2如何構(gòu)建動(dòng)態(tài)RESTful API詳解
- SpringMVC Restful api接口實(shí)現(xiàn)的代碼
- SpringMVC數(shù)據(jù)頁響應(yīng)ModelAndView實(shí)現(xiàn)頁面跳轉(zhuǎn)
- Spring MVC 文件、cookies的接收 與REST響應(yīng)詳解
相關(guān)文章
深入了解Java中Synchronized關(guān)鍵字的實(shí)現(xiàn)原理
synchronized是JVM的內(nèi)置鎖,基于Monitor機(jī)制實(shí)現(xiàn),每一個(gè)對(duì)象都有一個(gè)與之關(guān)聯(lián)的監(jiān)視器?(Monitor),這個(gè)監(jiān)視器充當(dāng)了一種互斥鎖的角色,本文就詳細(xì)聊一聊Synchronized關(guān)鍵字的實(shí)現(xiàn)原理,需要的朋友可以參考下2023-06-06
Java經(jīng)理與員工的差異實(shí)現(xiàn)方法
這篇文章主要介紹了Java經(jīng)理與員工的差異實(shí)現(xiàn)方法,需要的朋友可以參考下2014-03-03
使用Maven進(jìn)行多模塊項(xiàng)目管理的操作步驟
使用Maven進(jìn)行多模塊項(xiàng)目管理可以清晰組織大型項(xiàng)目結(jié)構(gòu),便于維護(hù)和構(gòu)建,詳細(xì)步驟包括創(chuàng)建父項(xiàng)目,設(shè)置pom.xml,創(chuàng)建子模塊,并配置子模塊的pom.xml,在父項(xiàng)目中管理依賴,通過命令行構(gòu)建項(xiàng)目,確保配置一致性2024-10-10
java web在高并發(fā)和分布式下實(shí)現(xiàn)訂單號(hào)生成唯一的解決方案
這篇文章主要介紹了java web在高并發(fā)和分布式下實(shí)現(xiàn)訂單號(hào)生成唯一的解決方案,需要的朋友可以參考下2017-11-11
Java虛擬機(jī)調(diào)用Java主類的main()方法
這篇文章主要介紹了Java虛擬機(jī)調(diào)用Java主類的main()方法,前一篇文章我們介紹了關(guān)于Java虛擬機(jī)HotSpot2021-11-11
java實(shí)現(xiàn)液晶數(shù)字字體顯示當(dāng)前時(shí)間
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)液晶數(shù)字字體顯示當(dāng)前時(shí)間,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-12-12

