python bottle开发实例-用python web框架 bottle 开发网站(四)

news/2024/5/13 1:11:17/文章来源:https://blog.csdn.net/weixin_37988176/article/details/109373889

在第三节我们熟悉并编写了用户登录逻辑,这一节我们要实现用户状态保持,就是判断用户当前的登录状态,我们用加密cookie的方式来实现,在bottle中用response.set_cookie()和requests.get_cookie()来写入和读取用户cookie,非常简单,让我们在5分钟内实现它。

from bottle import run,route,template,request,response

from user import read_user

@route('/login', method = 'GET')

def index():

username = request.get_cookie('username', secret = 'usafe')

password = request.get_cookie('password', secret = 'psafe')

if read_user(username, password):

return '你已经登录'

return template('login')

@route('/login', method = 'POST')

def index():

username = request.forms.get('username')

password = request.forms.get('password')

if read_user(username, password):

response.set_cookie('username', username, secret = 'usafe', httponly = True, max_age = 600)

response.set_cookie('password', password, secret = 'psafe', httponly = True, max_age = 600)

return '登录成功'

return '账号密码错误'

run(host = 'localhost', port = 80, debug = True, reloader = True)

解释:

request.get_cookie('username', secret = 'usafe')是获取用户客户端的加密cookie,然后用自定义的安全字符串usafe来解密,获取username。

request.get_cookie('password', secret = 'psafe')是获取用户客户端的加密cookie,然后在服务端解密password。

response.set_cookie('username', username, secret = 'usafe', httponly = True, max_age = 600)是写入用户浏览器cookie,把username这个变量用安全字符串usafe加密,httponly指不允许通过javascript获取cookie,降低用户信息泄露风险,max_age = 600指这个cookie的有效期为600秒,600秒后就会过期,用户需要重新登录。

你可能会疑惑,这种方式安全吗?

首先并不是说cookie放到客户端就一定是不安全的,对于一些在服务端多次加salt然后用RSA加密方式加密,最后放到客户端的cookie安全性还是比较高的,也就是说Cookie != 不安全。在bottle中并不推荐我们使用把敏感信息放到cookie中的做法。

8556eaf6f694

image.png

也就是说bottle的cookie并没有经过强加密,我们只是用cookie实现用户登录状态的保持,想要安全?你可以自己写加密函数,把敏感信息加密后再放到cookie。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_704341.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python、语言的主网站网址是-国产编程语言木兰被网友扒皮:原来是Python语言打包...

日前中科院计算所下属单位发布了编程语言木兰,号称计算所编译实验室完全自主设计、开发和实现的编程语言,与之配套的编译器与集成开发工具也完全由团队自主实现。不过该语言发布之后,网友发现它其实是Python语言打包的,很多函数都…

css 网站常用

简单的loading效果 .progressBar {border: solid 1px #303031; font: bold 20px/22px Arial, sans-serif;background: white url(/images/loading.gif) no-repeat 10px 10px; filter:alpha(opacity85); -moz-opacity:0.85; -khtml-opacity: 0.85; opacity: 0.85; }.progres…

电商网站滑动门特效

今天在慕课网学习了JavaScript滑动门特效&#xff0c;这个特效在电商网站上比较常见&#xff0c;难度适中&#xff0c;要对JavaScript和DOM比较熟悉。 一、实现HTML CSS结构 首先编写HTML代码 1 <!doctype html>2 <html>3 <head>4 <meta cha…

python写网站和java写网站的区别-为什么说Java和Python现阶段并不适合普通网站建设...

经过20多年的发展&#xff0c;网站开发技术已经非常成熟&#xff0c;用于网站制作的程序语言也有很多。常见的当然是php和asp.net&#xff0c;特别是php程序语言&#xff0c;虽然其已经有很多年历史也历经多次迭代升级&#xff0c;但在凭借其开源、轻巧等优势&#xff0c;在网站…

网站安全扫描工具--Netsparker的使用

Netsparker是一款安全简单的web应用安全漏电扫描工具。该软件功能非常强大&#xff0c;使用方便.Netsparker与其他综合 性的web应用安全扫描工具相比的一个特点是它能够更好的检测SQL Injection和 Cross-site Scripting类型的安全漏洞. 一 新建. 打开软件后,首先创建一个方案,…

自学python网站-分享干货:三个新手自学Python的网站!

廖雪峰博客 小白的Python新手教程&#xff0c;具有如下特点&#xff1a;中文&#xff0c;免费&#xff0c;零起点&#xff0c;完整示例&#xff0c;基于最新的Python 3版本。随着AI时代的来临&#xff0c;Python已经是必学语言。 哔哩哔哩视频 B站有很多Python教学&#xff0c;…

自学python网站-自学Python网站推荐 从入门到精通

Python作为可在任何平台上运行的通用语言&#xff0c;深受编程语言学习者的喜爱。那么究竟该如何自学Python呢&#xff1f;本文小编将推荐自学Python的网站——博学谷。博学谷是传智播客旗下IT在线教育品牌&#xff0c;面向各个学习能力不同阶段学员&#xff0c;在这个平台上大…

python中小学生编程学习-推荐几个适合小白学习Python的免费网站

9gd少儿编程网-Scratch_Python_教程_免费儿童编程学习平台 想要学好python&#xff0c;只靠看Python相关的书籍是远远不够的&#xff01;互联网时代&#xff0c;我们还要充分利用网络上的免费资源&#xff0c;不然怎样成为一名**的Pythoner呢&#xff1f;今天小U就为大家分享几…

为何python不好找工作编程-为何python不好找工作,seo行业不好转行了

为什么python不太好找个工作 一切正常买的这一結果得话&#xff0c;你吸气这一无法得到服务项目对吧&#xff1f;教师被不平稳啊&#xff0c;网站被黑呀无法打开呀对吧&#xff1f;这一切这一切都是你自身那时候想不到好做个哪些的都是中后期对吧&#xff1f;哎哟&#xff0c;她…

python工作岗位的个人优势-Python历史+优缺点+应用领域+网站职位简介

一、Python的历史 1. 1989年圣诞节&#xff1a;Guido von Rossum开始写Python语言的编译器。 2. 1991年2月&#xff1a;第一个Python编译器&#xff08;同时也是解释器&#xff09;诞生&#xff0c;它是用C语言实现的&#xff08;后面又出现了Java和C#实现的版本Jython和IronPy…

html table 样式_网站设计时更改HTML表格背景色的新方法探索

在网站建设开发中&#xff0c;表格几乎每个网站都会有所使用&#xff0c;而使用css样式表更改表格或者单元格背景颜色更不陌生。这篇文章讲述的主题&#xff0c;通过一些技术探索&#xff0c;告诉你在网站设计时更改HTML表格背景色的新方法。多年来&#xff0c;更改网站上表格各…

【PC工具】建议收藏!一个有N多日常生活学习办公小工具的神奇网站,推荐在线工具网站...

先发链接&#xff1a;http://www.gjw123.com/里边都是日常工作、生活、学习中可能会用到的&#xff0c;提高效率的小工具&#xff0c;很全面&#xff0c;比如&#xff1a;pdf格式转换、图片去水印、图片文字转换、logo制作等等。都是即点即用的&#xff0c;无需安装下载&#x…

【树莓派】可能是最简单粗暴的树莓派搭建个人网站教程

对很多初学者而言&#xff0c;在树莓派或服务器上搭建网站是一件非常头疼的事&#xff0c;不仅要在linux上运行命令行&#xff0c;还需要安装各种环境&#xff0c;稍微出点问题就可能前功尽弃。今天我给大家介绍一种简单粗暴无脑的网站搭建方法&#xff0c;全图形化鼠标操作&am…

生成元(Digit Generator ,ACM/ICPC Seoul 2005 ,UVa 1583)

生成元&#xff1a;如果 x 加上 x 各个数字之和得到y&#xff0c;则说x是y的生成元。 n&#xff08;1<n<100000&#xff09;,求最小生成元&#xff0c;无解输出0. 例如&#xff1a;n216 , 解是&#xff1a;198 198198216 解题思路&#xff1a;打表 循环将从1到10005&…

代码生成器,自己实现的一个基于模板的在线代码生成网站

说起为什么要做一个代码生成器&#xff0c;这个还是因为在做一个业务项目的时候&#xff0c;大量的页面功能要做&#xff0c;从后台到前台&#xff0c;虽然也选了一个基础的SSH框架系统做模板其结果还是耗费了大量的时间去一点一点的写代码&#xff0c;再加上业务需求并不明确&…

网站的容错性设计原则

互联网技术的飙升&#xff0c;网络技术的大量使用&#xff0c;郑州网站建设公司的职责也变得非常的高大上和沉重。如今市场上越来越多的B2C和C2C产品的用户体验越来越重要了&#xff0c;但是站在用户的角度上面&#xff0c;并不是每次搜索都是对的&#xff0c;我们在搜索浏览器…

[工具]更新音乐下载网站,MP3音乐无损音乐下载器

分享两个音乐下载网站&#xff0c;都是今天测试过可以正常使用的。这种网站不知道会存在多久&#xff0c;老样子不放文章里&#xff0c;回复关键字1、疯狂音乐搜索&#xff08;直接下载&#xff09;这是一个音乐聚集平台&#xff0c;支持国内大部分音乐平台。我们可以通过音乐名…

【PC工具】网站服务器端口检测工具,网络端口扫描工具,win10telnet安装方法

最近发现我的爱国工具出了点问题&#xff0c;这种东西一出问题&#xff0c;原因还是非常不好找的&#xff0c;一般采用一定的顺序进行测试&#xff0c;逐一排查出问题。虽然我还没找出问题原因&#xff0c;但已经大体分析出问题方向。今天给大家分享一下网络端口的检查方法。一…

asp的网站能封装成app吗_苹果App免签封装是什么?怎么实现免签封装?

目前主流的手机App分为两类&#xff0c;一种是ios系统&#xff0c;另一种是Android系统&#xff1b;其中ios系统的App开发完成后都是需要上架苹果应用商店或者通过苹果签名来进行下载安装的&#xff0c;那么网站/h5想要省去App开发的需要耗费大量精力和财力直接生成App&#xf…

【PC工具】几个提高工作效率的工具素材网站,美化代码,精美图标,logo设计...

Carbon精美代码生工具网址&#xff1a;carbon.now.sh精美代码生成利器&#xff0c;向别人展示代码的时候用&#xff08;装X专用&#xff09;&#xff0c;支持N多语言各种主题风格。如下图所示&#xff0c;在这里选择程序语言&#xff0c;支持的语言很多。代码选项左侧的是主题风…