Ajax C通过PageMethods的身份验证表单
关于这些教程,我有一个问题: 我已经用这些技巧创建了自己的网站,因此在我的HTML文件中,我当然在表单中插入了:Ajax C通过PageMethods的身份验证表单,ajax,Ajax,关于这些教程,我有一个问题: 我已经用这些技巧创建了自己的网站,因此在我的HTML文件中,我当然在表单中插入了: <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"></asp:ScriptManager> 我得到的唯一答案是来自浏览器的警报消息框: 目前无法处理您的请求,请稍后再试 你为什么认为这个方法不管用 我的意思是通常我不需要其他东西,不是吗 提前谢
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"></asp:ScriptManager>
我得到的唯一答案是来自浏览器的警报消息框:
目前无法处理您的请求,请稍后再试
你为什么认为这个方法不管用
我的意思是通常我不需要其他东西,不是吗
提前谢谢
编辑:
在开始调试代码之前,我决定禁用Web.config配置中的身份验证功能,我只在下面的所有行上添加了注释:
<authentication mode="Forms">
<forms loginUrl="Logon.aspx" name=".ASPXFORMSAUTH" defaultUrl="PlazaMonitor.aspx" >
</forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>-->
现在,我可以在后台代码Logon.aspx.cs上调用login\u GO方法
每个都可以正常工作,但身份验证却不行,因为我禁用了它
所有这些的目标都是使用隐藏代码方法对用户进行身份验证,因此,如果在使用身份验证方法之前需要对用户进行身份验证,我会发疯的^^
编辑:
我只是理解,在您进行身份验证之前,每个ressource都应该被禁用,所以即使是用于进行身份验证的WebMethod也会被禁用
你知道我们可以在Web.config的什么地方更改/允许我们需要的好资源吗
提前感谢你的帮助 您获得该警报是因为您在代码中创建了该警报。您当前忽略的结果的实际内容是什么?服务器的实际响应是什么?当你调试这个服务器端时,会发生什么?谢谢你的帮助!我不确定你在说什么,我的意思是,关于我的代码,我把结果放在这里的唯一原因是现在是否真的调用了login_GO函数。通常,在点击按钮后,我只想被授权。。。就像在教程中一样。教程Logon.aspx中唯一的问题是,当我们单击按钮时,启动的脚本与站点位于同一文件中。。。所以所有用户都可以看到登录名和密码。。。。这就是为什么我想把这个函数放在服务器端…我的观点是你需要调试它。很有可能系统会告诉你出了什么问题,而你只是忽略了它。如果调用了ko JavaScript回调函数,那么这可能意味着服务器对AJAX调用的响应不成功,对吗?所以你需要确定这个反应到底是什么。使用浏览器的调试工具检查该响应。使用.NET调试工具检查AJAX调用时服务器端代码中发生的情况。我们无法在您的计算机上为您调试。您说得对,David,我查一下,大卫?你能读一下我的编辑评论吗?我有消息。。。
[WebMethod]
public string login_GO(string user, string password)
{
if (user == "cool" && password == "whau")
{
FormsAuthentication.RedirectFromLoginPage(user, true);
return "done";
}
else
{
return "KO";
}
}
<authentication mode="Forms">
<forms loginUrl="Logon.aspx" name=".ASPXFORMSAUTH" defaultUrl="PlazaMonitor.aspx" >
</forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>-->