【问题标题】:JqueryMobile asp.net authenticationJqueryMobile asp.net 身份验证
【发布时间】:2011-02-14 20:23:40
【问题描述】:

如何在 JqueryMobile 中完成此操作

我有一个带有用户名和密码的 aspx 文件。使用 .ajax 中的 Web 服务调用,我正在验证用户。现在我希望将用户发送到不同的页面,例如 auth.aspx。我怎样才能完成这个......??我还想确保不登录就无法访问 auth.aspx 文件。我知道用普通的 asp.net 技术来完成这个。但无法弄清楚如何使用 JQueryMobile 做同样的事情。谁能帮我解决这个问题...???

提前致谢...!!!!

【问题讨论】:

  • $.ajax 是在调用 Web 服务还是页面方法?
  • 它正在调用网络服务...!!!
  • 您是否在服务器上存储会话?
  • 我想...但是我该怎么做...??? Jquery 更多的是客户端的权利...???
  • 你是对的,Jquery 是客户端。但是,如果我正确理解您的问题,您需要管理服务器上的身份验证。请参阅下面的答案。

标签: jquery authentication mobile-website


【解决方案1】:

假设您在 ASP.NET 网站上工作,我相信您的解决方案位于服务器上。

首先你需要用这个属性装饰认证webservice方法:

[WebMethod(EnableSession=true)]
public result Authenticate()
{
}

现在,当您成功验证用户后,设置一个 Session 变量以登录:

Session["IsLogged"] = true;

你在浏览器中得到webservice结果并且成功,使用window.location = "auth.aspx"; 进行重定向;

在 auth.aspx 页面上,只需检查会话变量是否存在并设置为 true。如果不存在或不正确,则 Response.Redirect 回到登录页面...

编辑

通知用户非常简单... 这方面的方法具有不同程度的复杂性,首先要简单: 在您的登录页面上放置一个 span html 标签,在 html 标签中添加一个 id 属性

<span id="login_success"></span>

然后在您从身份验证 Web 服务返回后,使用 jQuery 更新该跨度中的文本。

$('#login_success').text('You have successfully logged in!');

【讨论】:

  • 太棒了……它奏效了。但是我遇到了另一个问题。一旦通过身份验证,我需要在标签中显示身份验证成功。我正在使用所有 html 控件。我怎样才能做到这一点..???客户端 Jquery 部分需要从服务器端通知...。对 ..???但是如何..???再次感谢您的帮助。
猜你喜欢
  • 2012-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-08
  • 2010-09-24
  • 2011-06-16
相关资源
最近更新 更多