I know this question is posted many times, but I am still overwhelmed.
I am using Identity in my ASP.NET MVC Project.
Note: My project is not completely an SPA but something in between, so I need the user to simply go to the "home page" if he/she is not logged-in.
But by using the "Authorize" attribute, there would always be a "ReturnUrl" appended as a query string.
According to what I read in the link below, there is no easy configuration for this matter:
Simple way to remove ReturnUrl - GitHub
And I couldn't find out where should I add the code mentioned in the above link, which is:
.AddCookie(options =>
So what I did as a workaround:
- According to the default behavior of ASP.NET Identity, if user is not logged-in, user will be redirected to an action.
- I changed the "login path" this way:
services.ConfigureApplicationCookie(options =>
{options.LoginPath = new PathString("/notsignedin");
});
and then created its action, and what this action does is to redirect the user to the "home page" without the "ReturnUrl" query string. The code is as follows:
[Route("notsignedin")]
public IActionResult NotSignedIn()
{
return RedirectToAction("Index");
}
Although it works, but I don't really like it because it redirects the user twice.
Since I'm a beginner I am not really aware of all the features available in ASP, so I appreciate any help.