编辑2:
我有一个基于计划或最终用户请求的后台进程在服务器端运行,我需要向所有用户显示图像以通知他该进程正在运行,或者在运行时取出图像该过程已完成。
编辑2完成
我正在通过 JavaScript 调用 ASMX Web 服务,该服务位于我的 IIS 上托管的网站中,它可以防止我的 session 超时。
为什么从客户端到 Web 服务的调用会阻止我网站上的 session 超时?
有办法阻止吗?
如果您需要更清楚地了解我的问题或更多详细信息,请告诉我。
编辑1:
根据信息和 link由 @Rene147 在下面的答案中提供以及一些谷歌搜索,我在我的网络服务方面尝试了以下操作:
[WebMethod(EnableSession=false)]
public string GetSummary()
{
HttpContext.Current.Response.Cookies.Remove(System.Web.Security.FormsAuthentication.FormsCookieName);
return "something";
}
但事实证明 HttpContext.Current.Response.Cookies
始终为空。
有什么提示吗?
最佳答案
根据我对您上次编辑的理解 - 如果您想读取 cookie 的值,您需要使用 Context.Request.Cookies 而不是 Response。
[WebMethod(EnableSession = false)]
public string GetSummary()
{
HttpCookie decryptedCookie =
Context.Request.Cookies[FormsAuthentication.FormsCookieName];
return "something";
}
关于c# - 我正在从 javascript 调用 ASMX Web 服务,它可以防止我的 session 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22933838/