python flask oauth_Flask之 flask_httpauth(HTTPTokenAuth)
写一个简单的FlaskAPI,Token验证
下载flask-httpauth包,itsdangerous包
后者是用来生成临时身份令牌,检验token的
pip install flask-httpauth
pip install itsdangerous
model.py文件:(在model文件中user类下添加生成token方法)
# 生成token
@staticmethod
def generate_auth_token(user_id):
s = Serializer(Config.SECRET_KEY, expires_in=Config.EXPIRES_IN)
return s.dumps({'id': user_id}).decode('ascii')
authToken.py文件:(验证token文件)
from flask import g
from flask_httpauth import HTTPTokenAuth
from itsdangerous import SignatureExpired, BadSignature, TimedJSONWebSignatureSerializer as Serializer
from App.models import User
from App.settings import Config
#生成HTTPTokenAuth对象
authToken = HTTPTokenAuth()
#@authToken.verify_token用来重写HttpTokenAuth验证token方法
@authToken.verify_token
def verify_authToken(token):
g.user = None
s = Serializer(Config.SECRET_KEY)
try:
data = s.loads(token)
except SignatureExpired:
# 正确但是过期了
return False
except BadSignature:
# 错误的token
return False
#上面没有返回错误,下面就执行你的token验证逻辑并返回
return True
到这里验证token的文件写好了.
需要注意的是,后端收到登录请求,验证密码成功后返回token给前端.
前端在请求中携带token的时候,在`Authorization`请求头设置上
添加Bearer +token的样式.否则verify_authToken(token)将获取不到token.
如下
headers['Authorization'] = 'Bearer ' + token
看插件HTTPTokenAuth源码可以看到:
默认token的scheme是: Bearer.
def __init__(self, scheme='Bearer', realm=None, header=None):
super(HTTPTokenAuth, self).__init__(scheme, realm, header)
如果想修改,直接authToken.verify_token(scheme="")
python flask oauth_Flask之 flask_httpauth(HTTPTokenAuth)相关推荐
- 全栈Python Flask教程-建立社交网络
Learn how to build a basic social platform with the Python Flask web framework. 了解如何使用Python Flask网络 ...
- python flask高级编程之restful_('Python Flask高级编程之RESTFul API前后端分离精讲',),全套视频教程学习资料通过百度云网盘下载...
资源详情 r n t某课网好评度100%的Python Flask高级编程之RESTFul API前后端分离精讲 r n t t t第1章 随便聊聊 r n t t t聊聊Flask与Django,聊 ...
- python flask实现博客系统_基于Flask的博客网站设计与实现
涂远杰 郑剑 摘要:该博客系统是一款分享型博客,注重个人的学习心得.生活等方面的记录.后台基于Python中的Flask框架开发,还涉及爬虫,数据库使用的是轻型的SQLite,同时,前端页面的实现涉及 ...
- python Flask框架如何请求及返回数据——flask详细教程
python Flask框架如何请求及返回数据--flask详细教程 文章目录: 1 Flask介绍 1.1 Flask简单介绍 1.2 Flask相关资料信息 2 Flask快速入门 2.1 Fla ...
- python开源项目博客_Blog_mini首页、文档和下载 - Python Flask开源博客 - OSCHINA - 中文开源技术交流社区...
使用Blog_mini,你完全不用担心博客的管理问题! Blog_mini是一个用Python Flask开发的,拥有简洁页面(支持响应式布局!)和强大后台管理功能的开源博客系统,使用Blog_min ...
- 用python+flask自己制作api(教程附源码)
1.背景 ok,可能很多朋友跟我一样经常使用各种api,比如facebook的,github的,甚至是微信的api.所以很多人也想制作自己的api.网上关于这方面的教程实在是很少,今天我就顺手做了一个 ...
- Build Docker image of a Python Flask app【转载】
原文地址:https://stackoverflow.com/questions/41750366/build-docker-image-of-a-python-flask-app I'm tryin ...
- Python Flask web 项目零改动迁移至阿里云函数计算
引言 最近尝试了一下阿里云的函数计算,整体感觉很好,主要是省钱!下面就简单聊一下,如何将 Python Flask 的 web 项目迁移至函数计算. 创建一个银行卡校验的 RestAPI 文件名:in ...
- 注意:python flask 里image文件 css文件 html文件都必须有固定存放位置!
html文件放在templates文件夹里 css文件和image文件都放在static文件夹里 Flask 中 CSS 能否放在其他位置? 但貌似也是能够自定义位置的 Flask静态文件目录地址自定 ...
最新文章
- NVIDIA Turing Architecture架构设计(上)
- 数据结构:排序算法之插入排序
- 浙江义乌发现桥头遗址,将5000年中华文明,再前推4000年?
- 论程序员的自我修养——我在阿里干了十年开发
- 从网络访问计算机不能添加用户名,windows7 和 XP 能互相用\\ip访问,但是不能通过计算机名访问...
- 2018一季度app Top500榜单,谁在抢线上最后的流量?
- Java_MD5的使用
- 【报告分享】2022十大科技趋势-达摩院.pdf(附下载链接)
- LuoguP1402 酒店之王
- 样条曲线_Apollo规划算法基于样条曲线的平滑分析(一)
- .Net Webapi SignalR与微信小程序的交互
- 请不要再蹭我了,谢谢
- 阿里云负载均衡SSL证书配置(更新)
- MATLAB 自带RS编码函数中 gf 数据转化为 double 数组的方法
- Arcgis拓扑检查必须相互覆盖操作步骤
- 中职计算机说课稿三篇,中职计算机说课稿三篇.docx
- Java 源文件的命名规则
- iOS 14 Beta 5 来了,修复游戏闪退问题了,还有着几个变化!
- oracle order by 排序之降序 null 排最后
- FCPX插件:15种棱镜折射图文展示介绍动画效果 Prism Slideshow