C# 如何删除托管环境中的cookie,我在本地环境中工作?
我正在使用Web api,AngularJS作为前端,我在本地环境中开发了一个应用程序,在本地一切正常。但今天我不得不在服务器上托管我的应用程序,我突然无法删除我可以在本地执行的cookie:C# 如何删除托管环境中的cookie,我在本地环境中工作?,c#,asp.net,.net,cookies,asp.net-web-api,C#,Asp.net,.net,Cookies,Asp.net Web Api,我正在使用Web api,AngularJS作为前端,我在本地环境中开发了一个应用程序,在本地一切正常。但今天我不得不在服务器上托管我的应用程序,我突然无法删除我可以在本地执行的cookie: public virtual HttpResponseMessage UnAuthenticate() { if (HttpContext.Current.Request.Cookies["sessionId"] != null) { HttpCookie cookie =
public virtual HttpResponseMessage UnAuthenticate()
{
if (HttpContext.Current.Request.Cookies["sessionId"] != null)
{
HttpCookie cookie = HttpContext.Current.Request.Cookies["sessionId"];
cookie.Expires = DateTime.Now.AddDays(-1);
HttpContext.Current.Response.Cookies.Add(cookie);
}
HttpRuntime.Cache.Remove("cacheToken");
return null;
}
我做错了什么
更新
它在IE中工作,但在Chrome中失败。试试这个
public virtual HttpResponseMessage UnAuthenticate()
{
HttpCookie cookie = HttpContext.Current.Response.Cookies["sessionId"];
if (cookie != null)
{
cookie.Expires = DateTime.Now.AddDays(-1);
}
return null;
}
使用Response.SetCookie而不是Cookies.Add。请阅读此内容进行比较。此答案似乎有助于: