5
我试图从HttpResponseHeaders
中删除特定的Set-Cookie
标头OnActionExecuted
方法ActionFilter
。从WebApi中删除HttpRequestHeaders中的特定cookie的方法
我有几个问题与:
- 我不能看到罗列头的方式。即使我在调试器中看到标题,该集合始终为空 。
- 因为我不能 枚举,我不能删除特定的报头。我只能用相同的密钥删除所有 头,但
Set-Cookie
可以有多个 条目。
目前我删除所有cookie,但是这不是我想要的。
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);
}
我不想删除用户计算机上的cookie。我只是不想在Web-Api中将cookie发回给用户,以防止某些web-api操作滑动到期。所以我想删除特定的Set-Cookie头。 – Marcin
好吧,那么我只是好奇,为什么你要做到这一点@Marcin? –
我有web app的内部使用的web应用程序。它用于简化要求,并获得返回的格式为JavaScript责任等。由于我使用窗体身份验证时,cookie是一段时间后发送,延长到期时间。我的应用程序中有几个动作会自动在后台调用。所以我想阻止它们延长Auth cookie的到期时间。 – Marcin