#!/usr/bin/python #coding=utf-8 from flask import Flask,session,redirect,url_for,request app=Flask(__name__) app.secret_key='xf1x92Yxdfx8ejYx04x96xb4Vx88xfbxfcxb5x18Fxa3xeexb9xb9tx01xf0x96' #配置secret_key,否则不能实现session对话 # or # app.config['SECRET_KEY'] = 'xcax0cx86x04x98@x02bx1b7x8cx88]x1bxd7"+xe6px@xc3#\' # or # app.config.update(SECRET_KEY='xcax0cx86x04x98@x02bx1b7x8cx88]x1bxd7"+xe6px@xc3#\') @app.route("/") def index(): if session.get('username')=='shiyanlou' and session.get('password')=='shiyanlou': return "hello shiyanlou" return "you are not logged in" @app.route("/login",methods=["POST","GET"]) def login(): if request.method=='POST': session['username']=request.form['username'] session['password']=request.form['password'] print '>>>>>>>>>>>>>>>>>>>>>' print session return redirect(url_for('index')) return """ <form action="" method="post"> <p><input type=text name=username> <p><input type=text name=password> <p><input type=submit value=Login> </form> """ @app.route("/logout") def logout(): session.pop('username',None) session.pop('password',None) return redirect(url_for('index')) if __name__=="__main__": app.run(host='0.0.0.0',debug=True,port = 8017)
以上代码来源:https://www.douban.com/note/511577488/
Flask生成SECRET_KEY(密钥)的一种简单方法:
原文:http://flask123.sinaapp.com/article/41/
SECRET_KEY是Flask中比较重要的一个配置值。本文介绍一种比较简单的生成SECRET_KEY的方法。
Session, Cookies以及一些第三方扩展都会用到SECRET_KEY值,这是一个比较重要的配置值,应该尽可能设置为一个很难猜到的值,随机值更佳。
随机的问题在于很难判断什么是真随机。一个密钥应该足够随机。你的操作系统可以基于一个密码随机生成器来生成漂亮的随机值,这个值可以用来做密钥:
>>> import os >>> os.urandom(24) 'xcax0cx86x04x98@x02bx1b7x8cx88]x1bxd7"+xe6px@xc3#\'
把这个值复制粘贴到你的代码,你就搞定了密钥。
设置方法:
app = Flask(__name__) app.config['SECRET_KEY'] = 'xcax0cx86x04x98@x02bx1b7x8cx88]x1bxd7"+xe6px@xc3#\' # or app.secret_key = 'xcax0cx86x04x98@x02bx1b7x8cx88]x1bxd7"+xe6px@xc3#\' # or app.config.update(SECRET_KEY='xcax0cx86x04x98@x02bx1b7x8cx88]x1bxd7"+xe6px@xc3#\')