我是一个jsp页面,我将在其中向我的servlet发出HTTP POST。 我的网络应用管理会话。 当我点击下面的按钮时:
<button onclick="SendSDPLine()"> </button>
这是执行的内容:
<script type= text/javascript>
function SendSDPLine(){
var sdp="12345";
var url = "http://localhost:8080/AccountController";
var action_type = "InsertSDPLine"
$.ajax({
type: "POST",
url: url,
data:{
"action" : action_type,
"sdpline" : sdp
},
success: function(data) {
alert('sdp inviato!');
},
// vvv---- This is the new bit
error: function(jqXHR, textStatus, errorThrown) {
console.log("Error, status = " + textStatus + ", " +
"error thrown: " + errorThrown
);
}
});
}
好吧,我看到404 localhost:8080/AccountController/
但是,当我通过JSP POST指向这个servlet时,例如在表单中:
<form class="form" method="post" action="AccountController?action=InsertSDPLine">
<span style="color:red"> ${message}</span>
<div class="input-container">
<input type="text" required="required" name="username"/>
<label for="username">Username</label>
<div class="bar"></div>
</div>
<div class="button-container">
<button><span>Send</span></button>
</div>
</form>
有200个确定。检查控制台的网络选项卡,我发现在JSP POST请求中有会话cookie(JSessionID),但在JS HTTP POST中没有。 为什么这种行为改变?