Sto tentando di rimuovere l'intestazione Set-Cookie
specifica da HttpResponseHeaders
nel metodo OnActionExecuted
di ActionFilter
.Un modo per rimuovere cookie specifici da HttpRequestHeaders in WebApi
Sto avendo alcuni problemi con quella:
- non riesco a vedere il modo di intestazioni di enumerare. La collezione è sempre vuota, anche se vedo le intestazioni nel debugger.
- Perché non riesco a enumerare , non riesco a rimuovere l'intestazione specifica. Posso rimuovere tutte le intestazioni con la stessa chiave, ma
Set-Cookie
può avere più voci .
Attualmente sto rimuovendo tutti i cookie, ma questo non è quello che voglio.
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);
}
io non voglio cancella cookie sul computer dell'utente. Semplicemente non voglio mandare i cookie all'utente in Web-Api, per impedire la scadenza di scorrimento su alcune azioni del web-api. Quindi voglio rimuovere l'intestazione Set-Cookie specifica. – Marcin
Ok, allora sono solo curioso di sapere perché devi fare questo @Marcin? –
Possiedo un'app Web con utilizzo interno di Web API. Viene utilizzato per semplificare la richiesta e ottenere la responsabilità del formato restituito su javascript, ecc. Poiché sto utilizzando l'autenticazione basata su form, il cookie viene inviato dopo un po 'di tempo per estendere il tempo di scadenza. Ci sono poche azioni nella mia app, che vengono chiamate in background, automaticamente. Quindi voglio impedire loro di estendere la scadenza del cookie di autenticazione. – Marcin