Próbuję usunąć konkretny nagłówek Set-Cookie
z HttpResponseHeaders
w metodzie OnActionExecuted
z dnia ActionFilter
.Sposób usunięcia określonego pliku cookie z HttpRequestHeaders w WebApi
Mam kilka problemów z tym:
- Nie widzę sposobu nagłówków wyliczyć. Kolekcja jest zawsze pusta , nawet jeśli widzę nagłówki w debugerze.
- Ponieważ nie mogę wymienić , nie można usunąć określonego nagłówka. Mogę tylko usunąć wszystkie nagłówki z tym samym kluczem, ale
Set-Cookie
może zawierać wiele wpisów .
Obecnie usuwam wszystkie pliki cookie, ale nie jest to to, czego chcę.
public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
{
HttpResponseHeaders headers = actionExecutedContext.Response.Headers;
IEnumerable<string> values;
if (headers.TryGetValues("Set-Cookie", out values))
{
actionExecutedContext.Response.Headers.Remove("Set-Cookie");
}
base.OnActionExecuted(actionExecutedContext);
}
ja nie chce usuń plik cookie na komputerze użytkownika. Po prostu nie chcę wysyłać ciasteczek z powrotem do użytkownika w Web-Api, aby zapobiec wyślizgnięciu się z niektórych działań web-api. Dlatego chcę usunąć konkretny nagłówek Set-Cookie. – Marcin
OK, to jestem po prostu ciekawy, dlaczego musisz to zrobić @Marcin? –
Mam aplikację internetową z wewnętrznym wykorzystaniem interfejsu API. Służy on do uproszczenia żądania i ponoszenia odpowiedzialności za zwracany format do javascript itp. Ponieważ używam uwierzytelniania formularzy, plik cookie jest wysyłany po pewnym czasie, aby wydłużyć czas wygaśnięcia. W mojej aplikacji jest kilka czynności, które są wywoływane w tle automatycznie. Dlatego chcę uniemożliwić im przedłużenie ważności pliku cookie Auth. – Marcin