【发布时间】:2011-01-01 08:37:59
【问题描述】:
情况是这样的……
站点 1) 供客户登录、查看和支付账单等的 ASP.NET MVC 应用程序。该站点使用无 cookie 的 ASP 会话来允许多个会话在选项卡式浏览器中运行。
站点 2) 具有标准静态内容的企业网站。这将在每个页面的顶部有一个小表单,其中包含一个用户名/密码表单,该表单将发布到 MVC 应用程序。
当发布到 MVC 应用程序时,正在生成一个新会话,并且该站点正在返回一个 302 重定向,其中包含 URL 中的会话 ID(如预期的那样)。控制器有两种登录方法,一种用于处理 GET,一种用于处理 POST。由于重定向,它正在使用 GET 方法并丢失表单值。
通过将公司网站上的方法更改为执行表单 GET 而不是 POST,用户名和密码在重定向后保留在查询字符串中,我可以通过这种方式处理请求,但我宁愿执行 POST而不是在 URL 中传递该数据。
我的直觉告诉我,实现某种自定义 HttpHandler 可以让我做到这一点,但我不确定在哪里可以与会话创建相关联。 global.asax 中 Session_Start 处的断点表明会话 ID 已被创建,并且重定向已在该点发生。
【问题讨论】:
标签: asp.net-mvc cookies