oqtane.framework/Oqtane.Server/Pages/Logout.cshtml.cs

24 lines
688 B
C#

using System.Threading.Tasks;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Oqtane.Shared;
namespace Oqtane.Pages
{
[Authorize]
public class LogoutModel : PageModel
{
public async Task<IActionResult> OnPostAsync(string returnurl)
{
await HttpContext.SignOutAsync(Constants.AuthenticationScheme);
returnurl = (returnurl == null) ? "/" : returnurl;
returnurl = (!returnurl.StartsWith("/")) ? "/" + returnurl : returnurl;
return LocalRedirect(Url.Content("~" + returnurl));
}
}
}