在客户端代码中进行回发后,RedirectUrl信息丢失了

时间:2009-12-01 10:51:28

标签: asp.net javascript

我的登录页面的工作方式如下:当您输入它时,javascript会从您那里读取一些信息,将其写入某些输入并进行提交,以便可以在服务器上读取和处理读取的数据。

<script language="javaScript" type="text/javascript">
    function getUserInfo() 
    {
            var userInfo = xyz.GetSecureBox();
            form1.info.value = userInfo;
            form1.read.value = "true";
            form1.submit();
    }
</script>

服务器代码是否对用户进行身份验证,具体取决于提供的数据。

问题在于,当您尝试输入其他页面时,让我们将其设为Default.aspx,您将被重定向到具有RedirectUrl参数的登录页面,以便您可以进行身份​​验证。但是回发后我发现了javascript的RedirectUrl信息丢失了。我该如何保存它?

我当然可以在js中读取该查询字符串参数并将其写入某个输入。如何在JS中访问查询字符串参数?也许有不同的方式?

2 个答案:

答案 0 :(得分:1)

我能想到的另一种方法是使用会话和/或cookie。

如果使用查询字符串并在JS中解析它,则必须自己编写代码。这里有很多代码。例如
Ask Ben: Getting Query String Values In JavaScript
jQuery Query String Object

答案 1 :(得分:1)

我的想法是将查询字符串参数写入服务器端的会话,这样我就可以在回发后轻松地在服务器上读取它。

Session["ReturnUrl"] = Request.QueryString["ReturnUrl"];  

这似乎是最简单的方法。