Python+Flask接口实现简单的ToKen功能
话不多说,上代码
from flask import request, jsonify from functools import wraps class TokenRequired: @classmethod def token_required( cls , f): @wraps (f) def decorated_function( * args, * * kwargs): # 获取请求头部中的key字段 # 也可以定义多个,这里仅定义了一个key try : key = request.headers.get( 'key' ) if not key: return jsonify({ 'message' : 'Key缺失!' }), 401 hf = HFCryptogramLibrary() #自定义的加密方法 #解密Key key = hf.Decode(key) if not key.startswith( "自定义的Key格式" ): return jsonify({ 'message' : 'Key格式有误!' }), 401 # 这里可以实现你自己的key格式转换,这里模拟转换日期 date_object = datetime.strptime(key, "%Y%m%d" ).date() current_date = date.today() if current_date > date_object: return jsonify({ 'message' : 'Key已过期' }), 401 # 验证通过,执行被装饰函数 return f( * args, * * kwargs) except Exception as err: return jsonify({ 'success' : False , 'message' : f '{err}' }), 200 return decorated_function |
接口的验证使用
from flask import Flask, request, jsonify from ToKenRequired import TokenRequired #ToKenRequired可以自定义类名 @app .route( '/api/data, methods=[' POST']) @TokenRequired .token_required #这里调用token def Data(): text = '' response = returnTrue(text) return jsonify(response) |
如有不足,还请各位大佬多多指教
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)