J'utilise les nouvelles pages Razor dans ASP.Net Core 2
Maintenant je dois rediriger
J'ai essayé ceci, mais la page ne redirige pas:
public class IndexModel : PageModel
{
public void OnGet()
{
string url = "/.auth/login/aad?post_login_redirect_url=" + Request.Query["redirect_url"];
Redirect(url);
}
}
Comment rediriger?
Tu étais très proche. Ces méthodes doivent renvoyer une IActionResult
(ou Task<IActionResult>
pour les méthodes async), puis vous devez renvoyer la redirection.
public IActionResult OnGet()
{
string url = "/.auth/login/aad?post_login_redirect_url="
+ Request.Query["redirect_url"];
return Redirect(url);
}
Documentation sur les pages de rasoir
Cependant, vous avez un énorme Open Redirect Attack parce que vous ne validez pas la variable redirect_url
. N'utilisez pas ce code en production.
Même chose pour les pages sans cs:
@page
@functions
{
public IActionResult OnGet()
{
string url = "/.auth/login/aad?post_login_redirect_url="
+ Request.Query["redirect_url"];
return Redirect(url);
}
}