ajax post json到服務器的小細節


1.服務器端,spring mvc 代碼:

@RequestMapping(value = "/save")
@ResponseBody
public BaseModelResult<Long> update(@RequestBody User param) {

....

}

通過標記@RequestBody 會將請求的json數據自動轉為對象,實際上如果web頁面通過form表單提交的話,直接update(User param)這種方式也能自動轉,不太喜歡這種json方式,有時有點坑。

2.Web頁面代碼

$.ajax({
            type: "POST",
            url: "save.do",
            contentType:"application/json",
            data: JSON.stringify({name:$("#userName").val(),
                password:$("#password").val()
            }),
            dataType: "json",
            success: function (result) {
                console.log(result);                
            },
            error: function (message) {
                console.log(message);
            }
 });

注意標紅的地方:
(1)contentType 默認為表單提交,也就是application/x-www-form-urlencoded方式,此處需要改為json方式

(2)data傳入數據,此處需要注意需要轉為字符串,不能傳對象,感覺挺坑,此處應該與一般的post/get方式一致,都應為對象才好

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM