在MVC中授权失败后保留查询字符串参数

时间:2015-05-22 11:34:15

标签: url redirect model-view-controller authorization

我有一项任务,当用户点击电子邮件中的链接时,我必须确保根据查询字符串中的某些url参数执行特定操作(打开弹出窗口),但假设用户是未记录,然后授权失败,因为我将用户重定向到的操作具有authorize属性, 我在这里显示一个页面,说授权失败,然后有一个链接,用户可以通过该链接登录并重定向到她的登录页面。 不幸的是,URL参数丢失了。 当函数HandleUnauthorizedRequest被命中时,我在filtercontext中有它们,如何在登录后传递此URL。

1 个答案:

答案 0 :(得分:0)

当用户未登录时,您需要在登录屏幕中传递原始意图或目的地的信息。

执行此操作的一种标准方法是在查询字符串中包含信息,例如http://blah.com/login?continue=<url encoded original url>。当用户成功登录时,只需查看查询字符串是否有值,然后将用户重定向到该用户,如果不是仅执行登录的默认操作。