我作爲一個路徑變量發送電子郵件ID服務器爲():當路徑變量包含@ResponseBody然後不工作
@RequestMapping(value = "/resetPassword/{email:.+}", method = RequestMethod.GET)
public @ResponseBody MyResponse resetPassword(HttpServletRequest request, @PathVariable("email") String email)
{
MyResponse res = new MyResponse();
res.setMsg("some Text");
return res;
}
,我的jQuery的調用方法:
var email = $("#fpusername").val();
$.ajax({
type : "GET",
url : "./useraccount/resetPassword/" + email,
dataType : "json",
async : true,
success : function(data) {
alert(data.msg);
}
});
同樣的方法工作時,我送[email protected]
爲email
值,但提示以下錯誤:發送[email protected]
時406 [由該請求所標識的資源僅能夠 與根據該請求的特性不能接受產生響應的「接受」報頭]
可能重複[(。)Spring MVC的@PathVariable與點也越來越截斷(HTTP://計算器。com/questions/16332092/spring-mvc-pathvariable -with-dot-is-getting-truncated) –
@Martin Frey:不,這裏的問題不在於我的路徑變量在(。)之後被截斷。這裏的問題是當路徑變量包含一個(。),那麼響應正文註解不起作用,因此ajax沒有從服務器得到正確的響應 –
真的。我錯過了正則表達式。您是否嘗試將響應mediatype修復爲json? –