当前位置: 首页> 教育> 高考 > 网站在线客服系统哪个好_乐清网站建设公司_市场营销策略有哪4种_网络舆情监测专业

网站在线客服系统哪个好_乐清网站建设公司_市场营销策略有哪4种_网络舆情监测专业

时间:2025/7/13 16:42:19来源:https://blog.csdn.net/weixin_43872912/article/details/143540351 浏览次数:0次
网站在线客服系统哪个好_乐清网站建设公司_市场营销策略有哪4种_网络舆情监测专业

一、服务器中的session以及浏览器中的cookie

1、flask中要使用session的话需要在配置文件中的SECRET_KEY,这个secret_key是用来加密字符串的。
服务器中的session就是浏览器中的cookie

app.secret_key = “加密字符串"

2、session在flask中的使用

#设置session
session[“username”] = “”
#读取session
result = session[“res”]
Session.get(‘res')
#删除session
session.pop(‘username’)
#清除session中的所有内容
session.clear()

2、session还可以设置session过期时间,一般不设置的话就是浏览器关闭就是结束了。

#设置session.permanent的属性为True,就可以设置过期时间为31天(默认)
session.permanent = True#也可以手动调
#导入包
from datetime import timedelta
#配置有效时间
app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=7)
#设置过期时间
session.permanent = True

二、钩子函数

钩子函数函数的作用:在正常执行的代码中,插入一段自己想要执行的代码。
例如:

#在处理项目的第一个请求前执行,项目启动后会执行
@app.before_first_request#before_request 在每次请求前会执行
@app.before_request#在每次请求完成后执行
@app.after_request#不管是否有异常,注册的函数都会在每次请求之后执行
@app.teardown_request#不管是否有异常,注册的函数都会在每次请求之后执行
@app.teardown_appcontent#自定义过滤器
@app.template_filter#上下文处理器,如果一些在很多模版中都要用到的变量,那么就可以用这个钩子函数来返回
@app.context_processor
def my_context_process(): return {'user':g.user}

三、装饰器

作用:定义一个函数,用来为其他函数添加额外的功能

#导入包
from functors import wraps#定义,func是在被注释的函数,这个装饰器是判断是否已经登陆,如果没有则跳转到登录页面
def before_open_verify(func):#保留func的信息@wraps(func)#这里的参数是 输入到func里面的参数def inner(*args,**kwargs):if g.user is None:return redirect(url_for("auth.login_page"))else:res = func(*args,**kwargs)return resreturn inner#使用
@bp.route("/qa/detail/<qa_id>",methods=["GET","POST"])
@before_open_verify
def qa_detail(qa_id):if request.method == "GET":question = QuestionModel.query.get(qa_id)return render_template("detail.html",question = question)else:answer = AnswerModel(question_id = qa_id, author_id = g.get("user").id,answer_content = request.form["content"],answer_time = datetime.now())db.session.add(answer);# 3. 将db.session中的改变同步到数据库中db.session.commit();return redirect(url_for("qa.qa_detail",qa_id=qa_id))

四、全局变量g

生命周期:单个request请求处理期间生效

#导入包
from flask import g
#设置全局变量
setattr(g, “user", user)
g.user = user
#判断是否有某个属性
hasattr(g,”user”)
If g.user == None
#获取某个属性
getattr(g,”user”)
g.user
关键字:网站在线客服系统哪个好_乐清网站建设公司_市场营销策略有哪4种_网络舆情监测专业

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: