我无法在 servlet 页面中获取 POST 值。我之前的问题与这个问题相关。如何从servlet页面中的ajax请求获取数据? https://stackoverflow.com/questions/6042177/how-to-get-the-data-from-ajax-request-in-servlet-page
我的 servlet 页面中需要数据请求对象值。
var dataRequestObject= {};
dataRequestObject= {mark:Mark,subject:English,language:C language,author:john};
var dataRequestHeader= {};
dataRequestHeader= {Username:uname,Password:pword,Domain:domain,WindowsUser:windowsuser};
$.ajax({
type:'POST',
url:'http://localhost:8090/SampleServlet1/serv', //calling servlet
cache:false,
headers:dataRequestHeader,
data:JSON.stringify(dataRequestObject),
success:function(){ alert("Request Done");},
error:function(xhr,ajaxOptions){
alert(xhr.status + " :: " + xhr.statusText);
}
});
提前致谢。
您不应该将其作为 JSON 字符串发送,而应作为 JS 对象发送。改变
data: JSON.stringify(dataRequestObject),
by
data: dataRequestObject,
并通过 JS 对象中存在的键以通常的方式访问 servlet 中的值
String mark = request.getParameter("mark");
String subject = request.getParameter("subject");
String language = request.getParameter("language");
String author = request.getParameter("author");
// ...
请注意,您的 servlet 需要在同一域中运行,否则您会遇到同源政策 http://en.wikipedia.org/wiki/Same_origin_policy。如果它实际上在同一个域上运行,那么我不会在 JS 代码中对该域进行硬编码,因为这会使您的代码完全不可移植。所以更换
url: 'http://localhost:8090/SampleServlet1/serv'
by
url: '/SampleServlet1/serv'
or
url: 'serv'
as well.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)