现状如下:
网站1)ASP.NET MVC应用程序,供客户登录,查看和支付账单等。该网站使用无cookie ASP会话,允许在选项卡式浏览器中运行多个会话。
网站2)标准静态内容的公司网站。每个页面顶部都有一个带有用户名/密码表单的小表单,将提交到MVC应用程序。
当提交到MVC应用程序时,会生成一个新会话,并返回带有会话ID的302重定向URL(预期行为)。控制器有两个Login方法,一个用于处理GET请求,另一个用于处理POST请求。由于重定向,它会命中GET方法并且失去了表单值。
通过将公司网站上的方法更改为使用表单GET而不是POST,用户名和密码在重定向后会被保留在查询字符串中,可以通过这种方式处理请求,但我宁愿使用POST而不是在URL中传递数据。
我的直觉告诉我,实施某种自定义HttpHandler将允许我执行此操作,但我不确定在哪里能够连接到会话创建。在global.asax中的Session_Start处设置断点显示会话ID已经被创建并且重定向已经发生。