c# - c# ASP.NET 会话变量未初始化或更新
问题描述
在我的项目中,我试图设置“userid”会话变量,但是由于某种原因会话不会初始化。此行为适用于任何控制器中的所有会话变量,但我的基本控制器除外,它使用不同的方法来设置会话变量。
目前,我尝试了这些方法来设置会话变量:
Session.Add(...)
Session["keyname"] = "value";
我尝试在 中初始化会话Global.asax.cs
,并取得了一些成功,但这些变量无法更新:(
protected void Session_Start(Object sender, EventArgs e)
{
Session["userid"] = null;
Session["name"] = null;
}
ASP.NET 中的正常会话功能在几个月前运行良好,在这个项目中,使用会话变量的代码在几周内没有被触及,并且最后一次完美地工作。
该web.config
文件具有当前会话配置:
<sessionState mode="InProc" timeout="30" />
<pages enableSessionState="true"/>
我已经尝试了我在这个论坛和其他论坛上阅读的所有内容,但无济于事。我无法恢复“正常”会话功能。请问有人可以提供一些建议吗?我完全迷路了。
解决方案
改变这个:
<httpCookies httpOnlyCookies="true" requireSSL="true" />
对此:
<httpCookies httpOnlyCookies="true" requireSSL="false" />
修复通过 HTTP 不安全连接启用 cookie
推荐阅读
- asp.net-core - .Net Core 3.1 Web Api Jwt 授权返回 401.2 - 未经授权
- javascript - Laravel 7 原生 JavaScript 调用 API
- sql - 点燃默认表
- mysql - LEFT JOIN & SUBQUERY 与空列/ null 作为结果
- azure - 限制 Azure Key Vault 对 Web 应用和函数的访问
- css - 响应式 CSS 适用于移动设备,但不适用于桌面
- node.js - Mongoose - 使用 unique: true 默认值:null
- reactjs - 编译时带有警告。/home/hadrnet/Desktop/app/frontend/node_modules/react-native-webrtc/RTCView.js
- corda - 集成测试期间无法解析匿名方
- css - Angular mat 卡不会包装 ngx-charts 元素