ajax的post請求參數在服務端獲取不到的問題


Ajax的post請求屬性contentType若不是“application/x-www-form-urlencode”,若是“application/json”時,HttpServletRequest的實現類不會解析表單數據來放在request parameter map中,所以通過request.getParameter("XX")怎么也接收不到數據。代碼如下:

js代碼:

function newFunc(){

  var params = {};

  params.aa = ‘XX’;

  $.ajax({

    async:false,

    contentType:'application/json',

    url:projectUrl+'chk/ajax/ChkMessage.xhtml',

    type:'post',

    data:params,

    dataType:'json'

  });

}

java代碼:

@RequestMapping("/{channel/ChkMessage.xhtml}")

public void chkUserMessage(HttpServletRequest request,HttpSerlvetResponse response){

  String aa = request.getParameter("aa");//此處的aa為null

}

 

解決方式:

①將ajax換成get請求;

②contentType不使用”application/json”.


免責聲明!

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



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