可能是一个非常愚蠢的问题,你想在愚蠢的日子里问它。
用户从浏览器访问 ASP.net 应用程序中的网页。在服务器上建立了会话状态(和 ID)(在 proc、db 中)。很基本。
现在,如果请求来自非浏览器应用程序,例如发布并检索响应的控制台应用程序,是否会发生这种情况。
假设我在母版页中设置了一个会话变量。任何页面访问都将导致设置此会话变量。如果以编程方式发出请求以从页面获取响应会发生什么?此会话变量是否已设置或控制台应用程序请求是否有权访问会话?
根据MSDN,我假设它仅用于浏览器请求?
ASP.NET 会话状态使您能够在用户浏览 Web 应用程序中的 ASP.NET 页面时为用户存储和检索值。HTTP 是一种无状态协议。这意味着 Web 服务器将页面的每个 HTTP 请求视为一个独立的请求。服务器不保留先前请求期间使用的变量值的知识。ASP.NET 会话状态将在有限时间窗口内来自同一浏览器的请求标识为会话,并提供一种在该会话期间保持变量值的方法。默认情况下,为所有 ASP.NET 应用程序启用 ASP.NET 会话状态。