前端請求參數->HTTP編碼->SpringMVC接收參數過程的匹配

1.前端請求參數->HTTP編碼->SpringMVC接收參數

參數格式
  1. 前端參數數據格式

    1. Object objec = {key:value}
    2. key1=value1&key2=value12 (keyvalue字符串)
    3. JSON.stringfy(object) => “{key:value}”(json字符串)
  2. 後端SpringMVC接收參數類型
    1. @RequestBody註解接收要求無法進入方法體
      1. Json字符串
      2. application/json
      3. Post方法請求
    2. @RequestParam註解
    3. 無註解(以下結果默認無註解接收)
請求過程(Post請求)
Http接收參數編碼(請求頭:Content-type)
  1. 默認編碼 application/x-www-form-urlencoded; charset=UTF-8 (該編碼方式可以傳輸處了Json字符串以外數據)

    1. 前端參數爲obejct或者keyvalue字符串類型,都將以下編碼格式傳輸

      瀏覽器默認URL編碼格式:

      Source:

      dept%5BdeptName%5D=%E6%89%80%E6%9C%89%E9%83%A8%E9%97%A8&

      URL encoded:

      dept%5BdeptName%5D: %E6%89%80%E6%9C%89%E9%83%A8%E9%97%A8

      Decoded:

      dept[deptName]: 所有部門

    2. 前端參數爲Json字符串將以 {“dept”:{“deptId”:1,“deptName”:“所有部門”} json對象格式傳輸

      後臺無法解析數據

  2. application/json 傳輸格式爲json格式(該編碼方式必須配合@Requestbody註解參數接收)

    1. 前端參數爲obejct或者keyvalue字符串將以Source的格式傳輸但SpringMVC後臺無法解析
    2. 前端參數爲 Json字符串將 {“dept”:{“deptId”:1,“deptName”:“所有部門”} 傳輸同樣無法解析

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章