在Flask的框架中,自己已经封装了 cookie的respons,request 有存储就有读取及删除,那么就拿购物车来举例

  在我们登陆的时候会有之前在购物车存放的物品。也就是说在一个地方为我们保存了这些数据。前提有一个是要你登陆之后才能看到自己的购物车

  cookie对应的是client session对应的是server。  也就是说,要在服务器上登录你对应的账户,才能看到你自己在购物车添加的物品。但是

  物品那么多,不能都存在服务器上吧,所以一般cookie都存在自己的计算机上,只是找不到而已,这里就不说了。一些简单的原理实现一下。

  思路有了,就要上代码

首先来看cookie的简单存储,读数据,删除数据怎么实现 

# -*- encoding: utf-8 -*-
# cookie相关的操作,依赖于make_response库,调用cookie依赖request
# 导包
from flask import Flask, make_response, request
# 建立对象
app = Flask(__name__)
# 从配置文件中加载配置
app.config.from_pyfile('config.ini')
@app.route('/')
def index():
return '这里是首页'
# cookie存在client里。存在自己电脑的个人当资料里
# 存cookie的方法
@app.route('/setcookie')
def set_cookie():
resp = make_response('存储cookie')
# 使用set方法,来存储 key-values 形式的数据
resp.set_cookie('productname','卫生纸')
return resp
# 获取,取到数据,调用cookie的方法
@app.route('/getcookie')
def get_cookie():
# 通过request模块的cookies属性的方法指定Key 来调用value
resp = request.cookies.get('productname')
return resp
# 删除cookie的方法
@app.route('/delcookie')
def del_cookie():
# 通过make_response对象内置的delete_cookie方法来指定key来删除vaule
resp = make_response('删除cookie')
resp.delete_cookie('productname')
return resp
# 程序入口
if __name__ == "__main__":
app.run()
 
 
 
那么再来看session的简单实现,相比较而言,session的会简单些。
# -*- encoding: utf-8 -*-
# session 是依赖于flask的session模块
# 如果想要使用session模块。必须在配置文件中定义 secret——key (安全密钥)
# 导包
from flask import Flask, session
# 实例化对象
app = Flask(__name__)
# 配置文件
app.config.from_pyfile('config.ini')
# 创建首页
@app.route('/')
def index():
return '这是服务端'
# 存储session的方法
@app.route('/setsession')
def set_session():
# 直接使用session对存储的内容赋值
session['username'] = '你好啊, 这是我的私有属性。只有在服务端才能调用。客户端是调用不了这个session的key-value'
return '存储session成功'
# 有存储就有取
@app.route('/getsession')
def get_session():
# 通过session直接对内容进行调用
se = session['username']
return se
# 删除session的方法。
@app.route('/delsession')
def del_session():
# 通过session的pop方法来指定key删除vaule
session.pop('username')
return '删除成功'
# 程序入口
if __name__ == "__main__":
app.run()
 
 
 
    为了更好的业务,敲最好的代码。(我的也不怎么样[/捂脸])欢迎阅读
 

flask的cookie和session的简单原理的更多相关文章

  1. flask中cookie和session介绍

    flask中cookie和session介绍 一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.co ...

  2. flask中cookie和session设置

    flask中cookie和session介绍   一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户. ...

  3. Flask中cookie和session设置与csrf原理攻防

    Flask之操作cookie app.py from flask import Flask, request, Response app = Flask(__name__) @app.route('/ ...

  4. Flask:cookie 和 session (0.1)

    Windows 10家庭中文版,Python 3.6.4,Flask 1.0.2 Cookie是什么?有什么用? 某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常 ...

  5. Cookie和Session的工作原理及比较

    一.Cookie详解 (1)简介 因为HTTP协议是无状态的,即服务器不知道用户上一次做了什么,这严重阻碍了交互式Web应用程序的实现.在典型的网上购物场景中,用户浏览了几个页面,买了一盒饼干和两饮料 ...

  6. python三大框架之一flask中cookie和session的相关操作

    状态保持 Cookie cookie 是指某些网站为了 辨别  用户身份,进行会话跟踪而储存在用户本地的数据(通常会经过加密),复数形式是 coolies. cookie是由服务器端生成,发送给客户端 ...

  7. flask框架--cookie,session

    今天我又给大家分享一下怎么用flask框架来实现像淘宝购物车一样存储数据,并且把存储的数据删除,这个方法可以用两个方法都可以做成,一个是cookie,另一个是session. session是依赖于c ...

  8. 【Python】Flask系列-cookie和session笔记

    cookie: 1.cookie出现的原因:在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了 ...

  9. Flask (二) cookie 与 session 模型

    会话技术 Cookie 客户端端的会话技术 cookie本身由浏览器保存,通过Response将cookie写到浏览器上,下一次访问,浏览器会根据不同的规则携带cookie过来 ​ 特点:   - 客 ...

随机推荐

  1. 团队作业—预则立&&他山之石(改)

    首先特别感谢刘乾学长腾出他宝贵的时间接受我的采访,为我们提出宝贵的建议,深表感谢. 1.他山之石,可以攻玉.借鉴前人的经验可以使我们减少很多走弯路的地方,这也是本次采访的目的,参考历届学长的经验,让我 ...

  2. HBase性能优化 Java Api

    1. 使用“连接池” 如果每次和Hbase交互时都去新建连接的话,显然是低效率的,HBase也提供类连接池相关的API. 1.1. HTablePool 早期的API中使用它,但很不幸,现在它已经过时 ...

  3. MongoDb 物理位置应用实现

    1代码实现 官方驱动2.7版本 1.1范围查找 /// <summary> /// 半径范围查找位置信息 /// </summary> /// <param name=& ...

  4. Day3 MySql高级查询

    DQL高级查询 多表查询(关联查询.连接查询) 1.笛卡尔积 emp表15条记录,dept表4条记录. 连接查询的笛卡尔积为60条记录. 2.内连接 不区分主从表,与连接顺序无关.两张表均满足条件则出 ...

  5. leetcode 217. Contains Duplicate 287. Find the Duplicate Number 442. Find All Duplicates in an Array 448. Find All Numbers Disappeared in an Array

    后面3个题都是限制在1-n的,所有可以不先排序,可以利用巧方法做.最后两个题几乎一模一样. 217. Contains Duplicate class Solution { public: bool ...

  6. Docker实战(六)之使用Dockerfile创建镜像

    Dockervile是一个文本格式的配置文件,用户可以使用Dockerfile来快速创建自定义镜像. 1.基本结构 Dockerfile由一行行命令语句组成,并且支持以#开头的注释行. 一般而言,Do ...

  7. django自带的登录验证功能

    django自带的验证机制 from django.shortcuts import render, redirect from django.contrib.auth import authenti ...

  8. package.xml

    package.xml 也是一个catkin的package必备文件, 它是这个软件包的描述文件, 在较早的ROS版本(rosbuild编译系统)中, 这个文件叫做 manifest.xml , 用于 ...

  9. python-文件基本操作(一) (转载)

    转载自: https://www.cnblogs.com/nizhihong/p/6528439.html 一.打开文件的方法: 注意:file()和open()基本相同,且最后要用close()关闭 ...

  10. P2008 大朋友的数字

    题目描述 有一批大朋友(年龄15岁以上),他们每人手上拿着一个数字,当然这个数字只有1位,也就是0到9之间.每个大朋友的分数为在他之前的最长不下降子序列中所有数之和.(这个序列必须以它作为结尾!)如有 ...