others

http协议是无状态的通信协议,不会维持,每次请求后就会关闭,多以需要我们来维护用户的登录状态。维护用户的登录状态(或者说标识用户的身份信息或记录会话信息)有三种方法【郝玉龙 Javaee 编程技术 52页】:

1.cookie:通过cookie将当前用户信息传给服务器

2.url重写:将用户信息通过参数传递给服务器

3.使用session:

url重写很容易暴露用户的信息,一个用户的登录状态横容易被别人利用;关于使用cookie有许多争论,很多人认为会造成对隐私权的侵犯,所以大部分浏览器都允许用户关闭cookie。由于以上原因,session是使用最广泛也最安全的做法,在servlet容器中,session也是一个用于会话管理的非常重要的对象,并且他存在于服务器,安全性也有保障,使用也更加方便。

在早期的session需要cookie的支持,为了兼容用户禁用cookie的情景,浏览器采用了url重写的方式。但究其原理,都是向服务器传递了一个session的唯一标识标识(JSESSIONID或PHPSESSID),通过这个标识在服务器找到与之对应的session。(在c/s模型中可以使用数据库中间键redis等)。所以,使用此种策略也可以实现client与server之间的会话跟踪。

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏菩提树下的杨过

rpc框架: thrift/avro/protobuf 之maven插件生成java类

thrift、avro、probobuf 这几个rpc框架的基本思想都差不多,先定义IDL文件,然后由各自的编译器(或maven插件)生成目标语言的源代码,但是...

3489
来自专栏陈树义

1.Redis 的安装

一、Redis 介绍 Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。...

2839
来自专栏高性能服务器开发

服务器开发中网络数据分析与故障排查经验漫谈

一、 操作系统提供的网络接口 为了能更好的排查网络通信问题,我们需要熟悉操作系统提供的以下网络接口函数,列表如下: 接口函数名称接口函数描述接口函数签名soc...

2755
来自专栏编程

根据已有网络安装fabric-explorer

1.环境准备: lnodejs 6.9.x(不支持v7.x) lmysql 5.7或更高版本 lHyperledger Fabric 1.0 2.跑通网络: 假...

58610
来自专栏北京马哥教育

Linux 系统结构详解

Linux系统一般有4个主要部分: 内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管...

2563
来自专栏生信宝典

原来你是这样的软连接

923
来自专栏维C果糖

IntelliJ IDEA 中 Project 和 Module 的概念及区别

在 IntelliJ IDEA 中,没有类似于 Eclipse 工作空间(Workspace)的概念,而是提出了Project和Module这两个概念。接下来,...

20210
来自专栏鬼谷君

redis安装配置

982
来自专栏Youngxj

[教程]查看浏览器保存的加密密码

2574
来自专栏IT可乐

Nginx(三)------nginx 反向代理

  Nginx 服务器的反向代理服务是其最常用的重要功能,由反向代理服务也可以衍生出很多与此相关的 Nginx 服务器重要功能,比如后面会介绍的负载均衡。本篇博...

572

扫码关注云+社区