session对象

怎样判断用户是否在线

一个人想着一个人 提交于 2019-12-17 22:42:18
1.写后台线程,心跳机制等判断用户是否在线。 2.利用session 每次用户登录会产生一个session 因为考虑到一台电脑多个浏览器之间session不共享也就是可能会形成这样一个概念,你的同一个用户名在服务器中打开了两个不同版本的浏览器因此保存了2个session,也就造成了不准确的因素 所以你可以采用一张专门登录的数据库表格,字段不用多 保存登录的用户名就行,然后javaweb中有session的监听接口HttpSessionBindingListener,这个接口包含的两个方法分别会在每次因用户生成一个session触发,以及因用户正常注销session或非法超时服务器摧毁session后触发, 我们要做的细化工作就是,当每个用户产生一次session时(登录操作),查找这张表格是否已有此账号的登录记录。有则在此登录表中不做增加操作,没有则增加该用户到次登录表。 这样可以实现相对精准的登录人数,但对非法退出的用户,我想至今也没有一个好的想法,这种登录会多存在于服务器,知道服务器判定该session超时然后删除,该用户也就自动被删除登录表。 4.可以用application计算在线人数,比较好写 5.session的销毁和创建是可以监听的。 在application容器中维护一个变量。当监听要session创建者加一反之减一 容器,不是窗口打错了

Session的工作流程

大城市里の小女人 提交于 2019-12-17 22:22:11
session是另一种记录客户状态的机制,不同的是Cookie保存在客户端上,Session保存在服务器上 当浏览器方位服务器并发送请求时,服务器会创建一个session对象,生成一个类似key,value的键值对,然后将key返回到浏览器端,浏览器再次访问时,携带key找到对应的Session 来源: 51CTO 作者: 喝醉的熊 链接: https://blog.51cto.com/13550695/2459306

django配置*app*登录案例*orm简用

蓝咒 提交于 2019-12-17 05:20:03
1.静态文件的配置和使用 1.静态文件的配置和使用 没有css样式: 添加样式 结果: <html lang="en"> <head> <meta charset="utf-8"> <title>Signin Template for Bootstrap</title> <!-- Bootstrap core CSS --> <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"> <!-- IE10 viewport hack for Surface/desktop Windows 8 bug --> <link href="../../assets/css/ie10-viewport-bug-workaround.css" rel="stylesheet"> <!-- Custom styles for this template --> <link href="signin.css" rel="stylesheet"> <!-- Just for debugging purposes. Don't actually copy these 2 lines! --> <!--[if lt IE 9]><script src="../../assets

SQLAlchemy(3)

橙三吉。 提交于 2019-12-17 03:25:06
一. SQLAlchemy 介绍 SQLAlchemy是一个基于Python实现的ORM框架。该框架建立在 DB API之上,使用关系对象映射进行数据库操作,简言之便是:将类和对象转换成SQL,然后使用数据API执行SQL并获取执行结果。 pip3 install sqlalchemy 流程图 组成部分 Engine,框架的引擎 Connection Pooling ,数据库连接池 Dialect,选择连接数据库的DB API种类 Schema/Types,架构和类型 SQL Exprression Language,SQL表达式语言 SQLAlchemy本身无法操作数据库,其必须以来pymsql等第三方插件,Dialect用于和数据API进行交流,根据配置文件的不同调用不同的数据库API,从而实现对数据库的操作,如: MySQL-Python mysql+mysqldb://<user>:<password>@<host>[:<port>]/<dbname> pymysql mysql+pymysql://<username>:<password>@<host>/<dbname>[?<options>] MySQL-Connector mysql+mysqlconnector://<user>:<password>@<host>[:<port>]/<dbname> cx

APPlication,Session,Cookie,ViewState和Cache之间的区别

血红的双手。 提交于 2019-12-16 19:06:02
在ASP.NET中,有很多种保存信息的对象.例如:APPlication,Session,Cookie,ViewState和Cache等,那么它们有什么区别呢?每一种对象应用的环境是什么? 为了更清楚的了解,我们总结出每一种对象应用的具体环境,如下表所示: 方法 信息量大小 保存时间 应用范围 保存位置 Application 任意大小 整个应用程序的生命期 所有用户 服务器端 Session 小量,简单的数据 用户活动时间+一段延迟时间(一般 为20分钟) 单个用户 服务器端 Cookie 小量,简单的数据 可以根据需要设定 单个用户 客户端 Viewstate 小量,简单的数据 一个Web页面的生命期 单个用户 客户端 Cache 任意大小 可以根据需要设定 所有用户 服务器端 隐藏域 小量,简单的数据 一个Web页面的生命期 单个用户 客户端 查询字符串 小量,简单的数据 直到下次页面跳转请求 单个用户 客户端 Web.Config文件 不变或极少改变的小量数据 直到配置文件被更新 单个用户 服务器端 1.Application对象 Application用于保存所有用户的公共的数据信息,如果使用Application对象,一个需要考虑的问题是任何写操作都要在Application_OnStart事件(global.asax)中完成.尽管使用Application

会话技术(Cookie / Session / Token)

自作多情 提交于 2019-12-16 15:37:54
CSRF ( cross site request forgery ) 跨站点请求伪造 假如有一个恶意的网站链接指向我的网站链接,如果当前某个用户已经登录到我的网站上,那么当用户点击了恶意网站这个链接时,我的网站以为是当前用户发生的请求,但其实是恶意网站伪造的请求 Django 里如何使用 CSRF 防护 首先,最基本的原则是:GET 请求不要存在副作用。也就是说任何处理 GET 请求的代码对资源的访问都一定要是“只读“的。 启用 django.middleware.csrf.CsrfViewMiddleware 这个中间件 其次,在所有的 POST 表单元素时,需要加上一个 {% csrf_token %} 标签,django 第一次响应来自某个客户端的请求时,会在服务器随机生成一个token值,把该token值放在cookie中,然后每次POST请求都会带上这个token值,防止恶意网站请求伪造,避免发生CSRF攻击。 在渲染模块时,使用 RequestContext。RequestContext 会处理 csrf_token 这个标签, 从而自动为表单添加一个csrfmiddlewaretoken 的 input标签 会话技术 HTTP被设计为”无状态”,每次请求都处于相同的空间中。在一次请求和下一次请求之间没有任何状态保持,我们无法根据请求的任何方面(IP地址,用户代理等

Python操作MySQL:pymysql和SQLAlchemy

烈酒焚心 提交于 2019-12-16 15:21:46
本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同。 下载安装 pip3 install pymysql 使用操作 1、执行SQL #!/usr/bin/env python # -*- coding:utf-8 -*- import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123', db='t1') # 创建游标 cursor = conn.cursor() # 执行SQL,并返回收影响行数 effect_row = cursor.execute("update hosts set host = '1.1.1.2'") # 执行SQL,并返回受影响行数 #effect_row = cursor.execute("update hosts set host = '1.1.1.2' where nid > %s", (1,)) # 执行SQL,并返回受影响行数 #effect_row = cursor.executemany("insert into hosts(host,color_id

Go语言基础之Cookie和Session

被刻印的时光 ゝ 提交于 2019-12-16 15:14:17
Cookie和Session Cookie和Session是Web开发绕不开的一个环节,本文介绍了Cookie和Session的原理及在Go语言中如何操作Cookie。 Cookie Cookie的由来 HTTP协议是无状态的,这就存在一个问题。 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的请求响应情况。 一句有意思的话来描述就是人生只如初见,对服务器来说,每次的请求都是全新的。 状态可以理解为客户端和服务器在某次会话中产生的数据,那无状态的就以为这些数据不会被保留。会话中产生的数据又是我们需要保存的,也就是说要“保持状态”。因此Cookie就是在这样一个场景下诞生。 Cookie是什么 在 Internet 中,Cookie 实际上是指小量信息,是由 Web 服务器创建的,将信息存储在用户计算机上(客户端)的数据文件。一般网络用户习惯用其复数形式 Cookies,指某些网站为了辨别用户身份、进行 Session 跟踪而存储在用户本地终端上的数据,而这些数据通常会经过加密处理。 Cookie的机制 Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内

【ORACLE】查看死锁进程并结束死锁的脚本

删除回忆录丶 提交于 2019-12-16 11:21:34
--共享锁:Share;排他锁:Exclusive;行共享锁:Row-S;行排他锁:Row-X select V$SESSION.sid,v$session.SERIAL#,v$process.spid, rtrim(object_type) object_type,rtrim(owner) || '.' || object_name object_name, decode(lmode, 0, 'None', 1, 'Null', 2, 'Row-S', 3, 'Row-X', 4, 'Share', 5, 'S/Row-X', 6, 'Exclusive', 'Unknown') LockMode, decode(request, 0, 'None', 1, 'Null', 2, 'Row-S', 3, 'Row-X', 4, 'Share', 5, 'S/Row-X', 6, 'Exclusive', 'Unknown') RequestMode ,ctime, block b, v$session.username,MACHINE,MODULE,ACTION, decode(A.type, 'MR', 'Media Recovery', 'RT','Redo Thread', 'UN','User Name', 'TX', 'Transaction', 'TM', 'DML'

iOS 编程:NSURLSession

我的未来我决定 提交于 2019-12-16 10:31:44
定义:描述 Foundation 框架类在标准的网络传输协议下,用 URLs 连接因特网并与服务器交互的一整套体系。 支持的传输协议: File Transfer Protocol ( ftp:// ) Hypertext Transfer Protocol ( http:// ) Hypertext Transfer Protocol with encryption ( https:// ) Local file URLs ( file:/// ) Data URLs ( data:// ) 结构图 网络系统模块 5个模块:代理支持、身份验证和凭据、cookie 存储、配置管理和缓存管理。 Cookie,有时也用其复数形式 Cookies ,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。 NSURLSessionTask NSURLSessionDelegate 委托协议 Session 会话的概念 Session中任务的行为取决于三个方面: Session 的类型(取决于创建的配置对象类型); task 任务的类型; task 任务被创建时,app 是否处于前台状态? Session 的类型 默认会话(Default session) :与其他用于下载URL的 Foundation 方法类似。