【发布时间】:2017-01-17 10:16:04
【问题描述】:
我正在使用 AJAX 调用来调用我的 Java Servlet,但我无法从请求中读取输入参数。我尝试了两种方法,但没有运气:
var id;
$("#scan").click(function() {
id = 1;
$.ajax({
type: "POST",
data: id,
url: "http://10.1.42.249:8080/test-notifier-web/RestLayer"
});
});
还有:
id = 1;
$.post('http://10.1.42.249:8080/test-notifier-web/RestLayer', {
reqValue: id
}, function(responseText) {
// $('#welcometext').text(responseText);
alert("OK!!!");
});
我的servlet代码是请求参数的简单日志打印,但是返回值始终为null:
String reqID = "";
log.info("Servlet called");
reqID = request.getParameter("reqValue");
log.info("reqID = " + reqID);
我怎样才能让它工作?
我发现让代码正常工作的唯一方法是手动将参数添加到 servlet url,例如 http://10.1.42.249:8080/test-notifier-web/RestLayer?reqValue=1
【问题讨论】:
-
您使用
$.post的第二个示例应该可以工作。控制台有错误吗? -
您是否检查过您的 servlet 是否被调用?
-
检查你的servlet是否支持HTTP POST。我的意思是你的 servlet 中有
doPost吗?