日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
SpringMVC處理Put或Delete請(qǐng)求報(bào)錯(cuò)及解決方法-創(chuàng)新互聯(lián)

首先先貼原代碼和報(bào)錯(cuò)提示

成都創(chuàng)新互聯(lián)是一家以網(wǎng)站建設(shè)公司、網(wǎng)頁(yè)設(shè)計(jì)、品牌設(shè)計(jì)、軟件運(yùn)維、網(wǎng)站推廣、小程序App開發(fā)等移動(dòng)開發(fā)為一體互聯(lián)網(wǎng)公司。已累計(jì)為火鍋店設(shè)計(jì)等眾行業(yè)中小客戶提供優(yōu)質(zhì)的互聯(lián)網(wǎng)建站和軟件開發(fā)服務(wù)。

1.在web.xml配置文件中配置HiddenHttpMethodFilter,它的作用是能把POST請(qǐng)求轉(zhuǎn)換為PUT或DELETE請(qǐng)求。

HiddenHttpMethodFilter

org.springframework.web.filter.HiddenHttpMethodFilter

HiddenHttpMethodFilter

/*

2.配置視圖解析器

3.在JSP頁(yè)面中發(fā)送PUT或DELETE請(qǐng)求。注意表單中method必須為post,隱藏域中name和value屬性如下所示:

4.在目標(biāo)方法中接收請(qǐng)求。

@RequestMapping("/SpringMVC")

@Controller

public class SpringMVCTest {

private static final String Success = "Success";

@RequestMapping(value="/testRest/{id}", method=RequestMethod.PUT)

@ResponseBody

public String testRestPut(@PathVariable Integer id) {

System.out.println("testRest Put:"+id);

return Success;

}

@RequestMapping(value="/testRest/{id}", method=RequestMethod.DELETE)

public String testRestDelete(@PathVariable Integer id) {

System.out.println("testRest Delete:"+id);

return Success;

}

}無(wú)錫婦科醫(yī)院排行榜 http://mobile.chfk120.com

4.正常來(lái)說(shuō)是可以跳轉(zhuǎn)到Success.jsp頁(yè)面的,但是卻出現(xiàn)了錯(cuò)誤(我就只貼文字了)

HTTP Status 405 – Method Not Allowed

Type Status Report

消息 JSP 只允許 GET、POST 或 HEAD。Jasper 還允許 OPTIONS

描述 請(qǐng)求行中接收的方法由源服務(wù)器知道,但目標(biāo)資源不支持

Apache Tomcat/9.0.20

5.原因分析:JSP只支持GET與POST請(qǐng)求,而我們發(fā)起的是REST風(fēng)格的請(qǐng)求,同樣調(diào)用了PUT與DELETE方法,JSP無(wú)法解析。

6.解決方法:為controller里的testRestPut和tsetRestDelete方法添加**@ResponseBody注解**。如下所示:

@RequestMapping(value="/testRest/{id}", method=RequestMethod.PUT)

@ResponseBody

public String testRestPut(@PathVariable Integer id) {

System.out.println("testRest Put:"+id);

return Success;

}

@RequestMapping(value="/testRest/{id}", method=RequestMethod.DELETE)

@ResponseBody

public String testRestDelete(@PathVariable Integer id) {

System.out.println("testRest Delete:"+id);

return Success;

}

然后上網(wǎng)查閱了@responseBody注解的作用,這里大致貼一段:

-)將controller的方法返回的對(duì)象通過適當(dāng)?shù)霓D(zhuǎn)換器轉(zhuǎn)換為指定的格式之后,寫入到response對(duì)象的body區(qū),通常用來(lái)返回JSON數(shù)據(jù)或者是XML數(shù)據(jù)。添加此注解后,直接將數(shù)據(jù)寫入到輸入流,不會(huì)再走視圖處理器。他的效果等同于通過response對(duì)象輸出指定格式的數(shù)據(jù)。

添加注解之后順利解決問題。

創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。


網(wǎng)站欄目:SpringMVC處理Put或Delete請(qǐng)求報(bào)錯(cuò)及解決方法-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://www.dlmjj.cn/article/egcod.html