安卓项目实战之强大的网络请求框架okGo使用详解(四):Cookie的管理

article/2025/9/28 10:07:23

Cookie概念相关

具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制是需要借助于cookie机制来达到保存标识的目的,所谓session保持会话,对于客户端来说,就是cookie的自动管理。

cookie的内容主要包括:名字,值,过期时间,路径和域。路径与域一起构成cookie的作用范围。若不设置过期时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口,cookie就消失。这种生命期为浏览器会话期的cookie被称为会话cookie。会话cookie一般不存储在硬盘上而是保存在内存里,若设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie仍然有效直到超过设定的过期时间。存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。而对于保存在内存里的cookie,不同的浏览器有不同的处理方式。

session机制。session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。当程序需要为某个客户端的请求创建一个session时,服务器首先检查这个客户端的请求里是否已包含了一个session标识(称为sessionId,也就是请求头是否有cookie),如果已包含则说明以前已经为此客户端创建过session,服务器就按照sessionId把这个session检索出来使用(检索不到,会新建一个),如果客户端请求不包含sessionId(也就是不携带cookie的请求头),则为此客户端创建一个session并且生成一个与此session相关联的sessionId,sessionId的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个sessionId将被在本次响应中通过set-cookie响应头返回给客户端保存。客户端检查到这个响应头后,根据需要就会保存这个sessionId,下次在请求交互过程中便可以自动的按照规则把这个标识发送给服务器。这样就完成了session的保持。

okgo配置

对于okgo来说,okgo完全遵循了http协议,所以,如果你的服务端的session是按照set-cookie头返回给客户端,并且希望在下次请求的时候自动带上这个cookie值,那么你只需要在okgo初始化的时候添加这么一行代码:
在这里插入图片描述以上三种方式是okgo默认内置的三种cookie管理策略,任选其一就可以了,其中

SPCookieStore:使用SharedPreferences保持cookie,如果cookie不过期,则一直有效
DBCookieStore:使用数据库保持cookie,如果cookie不过期,则一直有效
MemoryCookieStore:使用内存保持cookie,app退出后,cookie消失

到此,以后所有的请求不需要你有任何的额外代码,就只要上面这一行,就完成了所有请求的cookie与session全自动管理。就是这么的强大!


http://chatgpt.dhexx.cn/article/TWGLEwZo.shtml

相关文章

Windows下安装Ginkgo测试框架

终端执行命令 #切换至GO安装路径 cd F:\Go\goProject\src\github.com F:#安装Ginkgo及其附加库 go get github.com/onsi/ginkgo/ginkgo go get github.com/onsi/gomega结果安装其附加库时开始报错 package golang.org/x/net/html/charset: unrecognized import path "g…

HTTPSConnectionPool(host=‘files.pythonhosted.org‘, port=443): Read timed out.

python 下载第三方库的时候一直报错怎么办, pip --default-timeout1000 install -U pip 尝试了延时操作依然不行,不能获取 这种情况有可能是你开了VPN或者是其他的软件,退出下载即可

Go:构建应用程序的10大框架

文章目录 简介一、CLI 命令(spf13/cobra)二、配置读取器(spf13/viper)三、Web 框架(labstack/echo)四、依赖注入(uber-go/fx)五、Swagger Generator, UI 和 Validation1. Swagger generator (swaggo/swag)2. Swagger UI (swaggo/echo-swagger)3. Swagger validation (go-swagge…

KgoUI(2) 之 vue + layui

框架源代码:码云 我接触layui 已经快2年多了(Layui刚出的时候我就开始关注了),vue 和 layui并不是天生一对,elementui 和vue配合更加亲密无间。我认为layui的弹层layer是当前前端最好的弹层。 这里依旧选择layu…

2021年全国大学生网络安全邀请赛暨第七届“东华杯“上海市大学生网络安全大赛Writeup

2021年全国大学生网络安全邀请赛暨第七届"东华杯"上海市大学网格全大赛Writeup Misc checkin 题目给了AGYAbABhAGcAewBkAGgAYgBfADcAdABoAH0- 是UTF-7编码,解码得到flag flag为: flag{dhb_7th}project 下载附件,解压之后发现这…

玩转Kafka—SpringGo整合Kafka

玩转Kafka—Spring整合Kafka 1 新建Spring Boot项目&#xff0c;增加依赖 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependenc…

视图单行子查询返回mysql,Oracle命令整理 - osc_sj1kgo4z的个人空间 - OSCHINA - 中文开源技术交流社区...

常用命令 1 sqlplus scott/tiger192.168.47.10:1521/orcl后面不要加&#xff1b; sqlplus sys/oracle as sysdba 【密码认证】 sqlplus用户名任意/密码任意as sysdba 【主机认证】 2 spool d:\基本查询.txt 录屏开始 spool off …

MLX90316KGO-BDG-100-RE传感器 旋转位置 角度测量

介绍 MLX90316是Tria⊗is旋转位置传感器&#xff0c;提供在设备表面旋转的小偶极磁铁(轴端磁铁)的绝对角位置。 得益于其表面的集成磁集中器(IMC)&#xff0c;单片设备以非接触式方式感知应用磁通量密度的水平分量。 这种独特的传感原理应用于旋转位置传感器&#xff0c;可在机…

图形语言 Kgo

http://www.ferlysoft.com/product-kgo.asp 始于2008 无代码开发技术&#xff0c;以图形取代编程 Kgo 介绍Kgo是无代码开发管理信息系统的特定领域语言。 Kgo语言由语法语义、图形设计云工具和运行时环境三个部分构成。Kgo 语法语义采用XSD&#xff08;XML Schemas Definition&…

KgoUI 页面展示

前端框架 vue layui sass 框架源代码&#xff1a;码云

微软账号登陆不上_微软待办(todo)如何跟Outlook任务同步?

小生我之前也遇到这个问题了&#xff0c;后来参考了知友的一个答案&#xff0c;自此得到了解决 但是也还是由很多人不太明白&#xff0c;所以我尝试着把我解决这个问题的关键点描述一下&#xff0c;希望能给大家一些帮助 关键点只有一个&#xff1a; 三个软件的账户一定要一样 …

微软HPC解决方案

首先我们先来看下高性能群集与其它几种群集的不同 高可用群集&#xff1a;群集所有节点&#xff0c;来维持一个应用的持续运作&#xff0c;如果当前应用所在节点失败&#xff0c;自动故障转移至其它节点 负载均衡群集&#xff1a;群集所有节点来平衡一个应用的访问请求&#x…

群辉服务器间同步文件,群晖NAS端之间同步(Cloud Station Sharesync)

Cloud Station套件是一个套件组&#xff0c;包含5个功能模块&#xff0c;其中Cloud Station Server是Cloud Station在NAS上的服务器端&#xff1b;云同步(Cloud Station Drive)和云备份(Cloud Station Backup)是电脑端软件&#xff0c;Drive是电脑端和NAS端的双向同步&#xff…

微软官方硬盘备份软件SyncToy

微软官方硬盘备份软件SyncToy 前言 最近用硬盘检测工具发现硬盘坏道有点多&#xff0c;状态不佳&#xff0c;折腾了一阵还差点把硬盘搞坏&#xff0c;好在重装系统解决了问题&#xff08;重装大法好&#xff09;。再加上现在网上对资源限制越来愈大&#xff0c;所以对数据安全…

微软同步工具之synctoy

&#xfeff;&#xfeff; synctoy是由 微软 推出的一款免费的文件夹同步工具。微软的软件都以复杂与臃肿著称&#xff0c;不过这款软件还真是摆脱了复杂和臃肿。 &#xff1a;第一項是最主要的雙向同步功能&#xff0c;會依據左右兩端點裡檔案的增加、刪除、修改、更名&#x…

软件工程测试题

学堂在线选择题汇总 初识软件工程 软件工程方法是&#xff08; &#xff09;。 为了获得高质量软件而实施的一系列活动为开发软件提供技术上的解决方法为支持软件开发、维护、管理而研制的计算机程序系统为了理解问题和确定需求而采取的一些技术和方法下面的&#xff08; &am…

远程桌面同步本地计算机,微软更新远程桌面应用现在终于可以在本地和远程计算机上复制文件...

远程桌面连接是许多专业用户和开发者必备的功能&#xff0c;通过远程桌面服务可以直接连接远程计算机并可以直接操作。 系统自带的远程桌面连接程序微软已经很久没有更新&#xff0c;因为微软现在主要通过应用商店发布新版本远程桌面应用。 比如在刚刚发布的远程桌面应用新版本…

解决 vscode 登录微软账户同步设置 出现“vscode.dev 关闭了连接“ 问题

我的电脑最近重装了系统&#xff0c;之前的软件都删除了&#xff0c;在重新安装vscode之后想同步之前的设置、主题时出现了问题。 我的解决方法是 在当前页面 输入 https://vscode.dev 看能不能打开。 如果能打开&#xff0c;再次点击vscode登录账号同步设置 我之前使用微软账…

微软应用商店_微软商店那些好用的UWP软件!你不看这篇文章会后悔的!超级实用! | APP杂货店...

作为一个前 Windows phone 用户,一直对微软应用商店(Microsoft Store)有特殊的感情,犹记得大一时天天活跃在爱应用、微疯客、IT之家只为盼着 wp应用能慢慢赶上其它平台,当微软推出uwp(Universal Windows Platform)应用时,更是感觉微软要成了,wp不会再小众了。 微软画饼 然…

FreeFileSync 免费文件同步软件 实时自动备份重要资料

重要资料&#xff0c;必需备份。狡兔还有三窟呢&#xff0c;更不说突然断电就可能OVER的硬盘。 但要用的资料时时时更新的&#xff0c;对于比较小的文档&#xff0c;我们可以按日期多备份几次。如&#xff1a; 备份文档 2017-12-04 备份文档 2018-01-01 备份文档 2018-10-05 ……