flask 请求勾子实现 request_auth认证

from flask import g,request
from comment.utils.tokens_pyjwt import verify_tokens

def jwt_request_auth():
	'''
	从请求(request)中获取token,并且验证token,验证成功之后把用户id保存到全局变量g中
	'''
	g.user_id=None		#定义变量
	#前端代码是是把token携带请求头中
	#获取token
	token=request.headers.get('token')
	#判断是否有token
	if token is not None:
		#如果token存在,开始校验token
		result=verify_tokens(token)
		#校验通过后,result返回一个字典,字典包括id和exp
		if 'id' in result:
			#只要字典中包含id,表示校验成功
			g.user_id=result['id']

1.定义请求钩子函数:在请求进来之前得到request中携带的token,开始验证token

comment--utils-- request_auth.py

from comment.utils.request_auth import jwt_request_auth

app.before_request(jwt_request_auth)

2.注册token认证的请求钩子,每一次请求之前都会做token的认证

info—__init__.py

你可能感兴趣的:(flask,flask,python,后端)