使用ASHX处理程序从外部站点登录

时间:2013-11-12 16:24:52

标签: asp.net session login ashx

我有一个ASP.NET站点,需要登录才能访问该站点的其余部分。登录信息存储在数据库中并通过服务访问。

该商家要求能够从外部网站登录。我在我的项目中添加了一个Generic Handler(.ashx),它带有用户名&密码输入,验证凭据,然后如果它们有效,则使用IRequiredSessionState接口将凭证存储在会话中。然后,它会向客户端提供应用程序入口点的URL。

客户端(使用jquery到.post()的普通旧HTML页面)然后获取响应并重定向到此URL。

嗯,这似乎很有效,而且正是我所需要的。我想通过这样做我可以避免生成令牌并在查询字符串中传递它,因为处理程序和站点都共享同一个会话。但现在的问题是,当我通过将登录HTML页面放在同事计算机上(例如,在我的应用程序中托管的外部)来尝试测试时 - 它不起作用。会话在ASHX处理程序中正确添加,但在入口点的Page_Load中,该会话值消失了..

我可以做我正在做的事情吗?为什么会议会像这样立刻忘记?我认为这与从登录页面登录并从那里重定向(它是相同的应用程序和相同的会话......)相同。

谢谢!

0 个答案:

没有答案