专栏首页Core Net静态变量和Session

静态变量和Session

静态变量: Application级别的,不同客户端访问同一个变量。

Session:对于每个访问的客户端是独立的,都有一个唯一的SessionID。也就是说,不同客户端下,都可以有一个Session["SessionStr"],数据不互通

所以当使用静态变量保存一些数据的时候要考虑不同客户端访问的时候的安全问题。

举例:  .net MVC

view:

    <p>SessionStr:@ViewBag.SessionStr</p>
    <p>StaticStr:@ViewBag.StaticStr</p>

    <form action="@Url.Action("test")" method="post">
        <input type="text" name="str" />
        <input type="submit" value="submit" />
    </form>

新建form, 用于输入并提交一个字符串。提交后将这个字符串分别保存至Session["SessionStr"]和 static string StaticStr

两个P标签, 分别用于显示Session["SessionStr"]和 static string StaticStr的值。

下面是Controller中的简单存储逻辑:

IE页面如下图:

这两个值都是空的。输入hello提交,结果如下

 打开另一个浏览器Firefox或者在另一台电脑访问该页面

可见Static是application级别的, 但Session是不通的。

同样在此页面输入world

两个浏览器页面中的StaticStr都会显示为world。 但Session分别为hello 和world

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • C# 从1到Core--委托与事件

      委托与事件在C#1.0的时候就有了,随着C#版本的不断更新,有些写法和功能也在不断改变。本文温故一下这些改变,以及在NET Core中关于事件的一点改变。

    FlyLolo
  • Visual Studio 2017 for Mac 连接Git的奇怪问题

    FlyLolo
  • Visual Studio 2017 for Mac 连接Git的奇怪问题

    FlyLolo
  • I Promise You

    PromiseKit是一个简易的异步框架,让你更加自如的将精力集中去处理更加重要的事情上。PromiseKit是一个更加易学,更加容易掌控并且结果思路更加清晰,...

    大话swift
  • Python模块整理(五):多进程mul

    线程共享全局状态,进程完全独立。线程局限在一个处理器,线程可以发挥多个处理器的资源. 没有找到processing模块只找到multiprocessing ...

    py3study
  • Springboot整合Websocket案例(后端向前端主动推送消息)

    在手机上相信都有来自服务器的推送消息,比如一些及时的新闻信息,这篇文章主要就是实现这个功能,只演示一个基本的案例。使用的是websocket技术。

    三哥
  • Terraform 入门

    王磊-AI基础
  • head first python选读(4):web 开发

    这个app.py是所有文件的入口。因此所有的文件都依靠这个文件进行交互。路径以根目录为主。

    一粒小麦
  • 起售价近5500,嘲讽了iPhone X的华为Mate 10却没用上人脸识别

    iPhone X 发布之后不久,华为曾在一则广告中讽刺 iPhone X 的面部识别解锁功能,并写道:“让我们面对现实吧!并不是所有人都适合面部识别。2017....

    AI科技大本营
  • 走过操作系统的世界来到Java面前

    cpu需要获取存储资源:这个过程我们称之为IO,IO很快,但是和cpu相比,它很慢,很慢。

    WindWant

扫码关注云+社区

领取腾讯云代金券