如何从servlet页面中的ajax请求获取数据?

时间:2011-05-18 08:58:19

标签: javascript jquery servlets

如何从servlet页面中的ajax请求中获取数据。在这里,我通过$.ajax调用servlet。

var dataRequestObject= {}; 
                dataRequestObject= {Username:uname,Password:pword,Domain:domain,WindowsUser:windowsuser};

var dataRequestHeader= {}; 
                dataRequestHeader= {Username:uname,Password:pword,Domain:domain,WindowsUser:windowsuser};


    $.ajax({
            type:'POST',
            url:'http://localhost:8090/SampleServlet1/serv', //calling servlet      
            cache:false,
            header:dataRequestHeader,
            data:dataRequestObject,
            success:function(){ alert("Request Done");},
            error:function(xhr,ajaxOptions){
                alert(xhr.status + " :: " + xhr.statusText);
                } 
            });

我在setvlet页面中需要这些数据和标题。

1 个答案:

答案 0 :(得分:4)

首先,header选项无效。它必须是headers。另请参阅jQuery.ajax() documentation

您可以使用HttpServletRequest#getHeader()按名称获取各个请求标头。

String headerUsername = request.getHeader("Username");
String headerPassword = request.getHeader("Password");
String headerDomain = request.getHeader("Domain");
String headerWindowsUser = request.getHeader("WindowsUser");
// ...

您可以使用HttpServletRequest#getParameter()按名称获取各个请求参数。

String paramUsername = request.getParameter("Username");
String paramPassword = request.getParameter("Password");
String paramDomain = request.getParameter("Domain");
String paramWindowsUser = request.getParameter("WindowsUser");
// ...

但我想知道在标题和参数上复制数据有多大用处......