Код: Выделить всё
if (Request.Cookies["cookieTest"] != null)
{
// Extract JWT from cookie
string cookie = Request.Cookies["cookieTest"];
}
else
{
// Other stuff
}
< /code>
Если бы я сделал выше, все было бы в порядке. Хотя недавно я пытался избежать такого пути и пытался использовать промежуточное программное обеспечение аутентификации в моей программе.Program.cs
Код: Выделить всё
builder.Services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.Cookie.Name = "cookieTest";
options.LoginPath = "/InvalidTokenException";
});
< /code>
LogoutApi.cs
Код: Выделить всё
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using SphereSocial.Security;
namespace SphereSocial.ApiEndpoints
{
[Route("/api/[controller]")]
[ApiController]
public class LogoutApi : ControllerBase
{
private readonly IJWTCookieHandler _jwtCookieHandler;
public LogoutApi(IJWTCookieHandler jwtCookieHandler)
{
_jwtCookieHandler = jwtCookieHandler;
}
[HttpPost]
[Authorize]
public IActionResult Post()
{
_jwtCookieHandler.ExpireJWTCookie();
return Ok();
}
}
}
< /code>
When I hit this Logout
api api api -запрос:
Подробнее здесь: https://stackoverflow.com/questions/795 ... -the-reque