【发布时间】:2015-04-10 11:39:56
【问题描述】:
在页面加载时,我想检查Request.IsAuthenticated。我怎样才能通过javascript做到这一点。
下面的代码显示了我在 asp.net c# 中是如何做到的?
if (!Request.IsAuthenticated)
{
Response.Redirect("~/Login.aspx");
}
【问题讨论】:
标签: javascript c# asp.net request
在页面加载时,我想检查Request.IsAuthenticated。我怎样才能通过javascript做到这一点。
下面的代码显示了我在 asp.net c# 中是如何做到的?
if (!Request.IsAuthenticated)
{
Response.Redirect("~/Login.aspx");
}
【问题讨论】:
标签: javascript c# asp.net request
如果您使用的是 ASP.NET MVC,那么您可以执行以下操作。
<script>
var isRequestAuthenticated=' @Request.IsAuthenticated';
</script>
否则,如果您使用的是普通的 ASP.NET Web 表单
<script>
var isRequestAuthenticated='<%=Request.IsAuthenticated%>';
</script>
现在您可以使用该变量来检查此请求是否经过身份验证。
【讨论】:
isRequestAuthenticated == "False",写 if(isRequestAuthenticated){foo();} 将执行 foo()。我把单引号去掉,加了.ToString().ToLower()。
这应该可行:
<script type="text/javascript">
function foo(){
if('@Request.IsAuthenticated' === 'True') {
// your implementation for authenticated users go here
}
else{
// your implementation for not authenticated users....
//e.g. alert('You must be logged in to do bla bla bla');
}
}
</script>
【讨论】:
对于 JavaScript,我假设您的意思是使用 AJAX,以便将值直接读入您的 JavaScript。
Response.Write(Request.IsAuthenticated ? "TRUE" : "FALSE");
如果为真,则返回“TRUE”,如果为假,则返回“FALSE”。将其放入只有您的 AJAX 函数调用的方法中。
【讨论】: