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

问题描述:

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

How to get the data from ajax request in servlet page. Here I'm calling the servlet by $.ajax.

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页面中需要这些数据和标题。

I need those data and header in setvlet page.

首先,标题选项无效。它必须是标题。另请参阅 jQuery.ajax()文档

First, the header option is invalid. It needs to be headers. See also the jQuery.ajax() documentation.

您可以使用 HttpServletRequest#getHeader()

You can get the individual request headers by their name using HttpServletRequest#getHeader().

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

您可以使用 HttpServletRequest#getParameter()

You can get the individual request parameters by their name using HttpServletRequest#getParameter().

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

我不知道复制数据有多大用处标题和参数......

I however wonder how useful it is to duplicate the data over headers and parameters...