zoukankan      html  css  js  c++  java
  • ASP.NET Response.Redirect 丢失 Session的问题

    最近做了一个项目发现 Response.Redirect 后 Session 会丢失,搞了两天终于发现问题所在。

    问题代码

    Session["xxx"] = xxx;
    Response.Redirect("yyy.aspx");

    当页面跳转到 yyy.aspx , Session 丢失,访问 Session[“xxx”] 得到 null.

    原因:当asp.net 执行 Response.Redirect 时会强制终止当前Response ,不发送当前页面的cookie 给浏览器,而是发送一个指令告诉浏览器重新发送一个新的HTTP请求到新的URL,结果导致当前的Session 丢失。

    解决这个问题的方法是在当前页面接受Get请求时就设置一下Session ,这样浏览器就会记录下当前的Session Id,当浏览器再发送Post 请求到当前页面时,Server就不需要再发送一次Session ID 的cookie 给浏览器了。

  • 相关阅读:
    C# 分布式自增ID算法snowflake(雪花算法)
    C# DateTime日期格式化
    HTTP响应状态码参考
    VS2019已还原ReSharper的功能
    2019前端UI框架排行榜
    2019年ASP.NET Core学习路线
    jumpserver堡垒机安装
    Linux shell 时间操作(取昨天 前天)
    nfs共享文件搭建
    zabbix agent配置详解(windows)
  • 原文地址:https://www.cnblogs.com/eaglet/p/1599480.html
Copyright © 2011-2022 走看看