当我从webform1尝试window.location.replace("webform2.aspx")
时,我丢失了网络会话。
我也试过href。我也把“/webform2.aspx”作为一个参数传递给了我。
但是,重定向会话丢失。
任何人都可以提供帮助。
WebForm1.aspx的
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script type="text/javascript">
function pageload() {
window.location.href("/webform2.aspx");
}
</script>
</head>
<body onload="pageload()">
<form id="form1" runat="server" >
</form>
</body>
</html>
WebForm1.aspx.cs中
protected void Page_Load(object sender, EventArgs e)
{
string str = this.Session.SessionID;
}
Webform2.aspx只是一个空表单,并且通过调试将aspx.cs作为上面的代码来记录会话ID。
更新 我使用下面的代码来实现。但是我只是保持这个问题开放,知道重定向与相对URL(没有会话ID)失去会话。这里还有一点是我将cookieless视为真实,因此只有我的网址会有会话ID。
var path = window.location.href;
var i = path.lastIndexOf("/") + 1;
var loc = path.substring(0, i ).concat("webform2.aspx");
window.location.href(loc);
答案 0 :(得分:0)
我使用了无cookie会话,因此相对URL重定向不具备会话知识,因此启动了新会话。
我使用下面的代码来克服这个问题。
var path = window.location.href;
var i = path.lastIndexOf("/") + 1;
var loc = path.substring(0, i ).concat("webform2.aspx");
window.location.href(loc);