我有一个 jquery ajax 请求
$('#updateUser').live( 'click', function() {
var euserId = editeduserId;
var pname = $('#euname').val();
var psurname = $('#eusurname').val();
var plogin = $('#eulogin').val();
var ppassword = $('#eupassword').val();
var pemail = $('#euemail').val();
var user = {name: pname,
surname: psurname,
login: plogin,
password: ppassword,
email: pemail};
$.ajax({
url: '/SimpleAjaxShit/UserController/' + euserId,
type: 'PUT',
data: user,
success: function(data) {
console.log(data);
},
error: function(data, response) {
console.log(data);
console.log(response);
}
});
$( "#dialog-modal" ).dialog( "close" );
});
servlet 中的 doPut 方法,用于处理 ajax 请求
protected void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name"); //Null
String surname = request.getParameter("surname"); //Null
String login = request.getParameter("login"); //Null
String password = request.getParameter("password"); //Null
String email = request.getParameter("email"); //Null
}
我可以在标题中看到我的参数, 但 request.getParameter("name") 等返回 Null
最佳答案
I can see me params in headers
如果您在 HTTP 请求的 header 中看到参数,那么您应该使用 request.getHeader()
方法从 header 中获取值。
request.getParameter()
通常用于从查询字符串中的参数中获取值。
关于jquery - servlet doPut request.getParameter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13196485/