我正在尝试执行已验证的Web API请求,但未重置身份验证Cookie超时。在MVC世界里,我会从性反应去除FormsAuthenication饼干做到这一点:从Web API中删除Cookie 2响应
Response.Cookies.Remove(System.Web.Security.FormsAuthentication.FormsCookieName);
的Web API 2我写了一个定制IHttpActionResult,而我除去响应的Set-Cookie头。但是,这并不是删除标题,因为当为使用此操作结果的请求更新auth cookie时,我仍然看到Set-Cookie标头。
这里是习俗IHttpActionResult:
public class NonAuthResetResult<T> : IHttpActionResult where T: class
{
private HttpRequestMessage _request;
private T _body;
public NonAuthResetResult(HttpRequestMessage request, T body)
{
_request = request;
_body = body;
}
public string Message { get; private set; }
public HttpRequestMessage Request { get; private set; }
public Task<HttpResponseMessage> ExecuteAsync(CancellationToken cancellationToken)
{
var msg = _request.CreateResponse(_body);
msg.Headers.Remove("Set-Cookie");
return Task.FromResult(msg);
}
}
如何编辑在网页API 2的响应报头,因为这是行不通的。
我需要为特定的要求做到这一点。不是全球Web API设置。 – LRFalk01