几个bottle插件
来源:互联网 发布:网络攻防交流平台 编辑:程序博客网 时间:2024/06/05 05:12
上篇《Bottle的插件与view装饰器冲突问题》里说到的问题就是我在写这几个插件时碰到的问题。
为便于使用bottle写了一组插件。最初自己用的时候是把所有功能都写在一个插件里,感觉有点笨重,不适合灵活组合,所以分拆改写成现在的样子。
包含
- beaker.BeakerPlugin
- params.ParamsPlugin
- login.LoginPlugin
beaker.BeakerPlugin
Beaker session插件,比bottle的官方beaker插件更便于使用——其实官方的beaker插件什么事都没做,跟直接用beaker没什么区别。
构造函数:
BeakerPlugin(keyword="session")
参数:
- keyword : beaker session使用的参数名,默认为session,如请求响应函数不包含此参数,则此插件被忽略,如包含此参数,则自动从请求环境中读取beaker的session对象
无可用route参数。
必须配合beaker midware使用,使用方法见beaker文档或示例程序demo.py。
params.ParamsPlugin
参数插件,自动把请求参数转为函数调用参数,默认使用utf-8编码转为Unicode,自动根据请求方法读取query或forms,如果设置了json_params选项,则读取json。
构造函数:
ParamsPlugin(json_params=False, encode="utf-8")
参数:
- json_params : 是否使用json参数。默认为False,如果设置为True则解析 bottle.request.json 的值,以dict方式解析为对应参数。
- encode : 指定请求编码方式。默认为utf-8。
route参数:
在请求的route中也可以使用 json_params ,用于对特定请求使用json格式。
login.LoginPlugin
简单的登录处理插件。如果请求需要用户登录时加上登录参数(默认为login),则会在处理请求前调用login_func处理登录操作,成功则将结果返回给login参数。
因为处理登录操作通常需要依赖数据库和session,所以需要两个额外参数:db和session。这两个参数将会被传递给login_func。
所以使用本插件至少需要同时安装一个数据库(或类似的如sqlalchemy)插件,和类似本插件包中的BeakerPlugin这样的session插件。
构造函数:
LoginPlugin(login_func, keyword="login", dbkeyword="db", sessionkeyworkd="session")
参数:
- login_func:登录处理函数,无默认值,带两个参数:db和session用于传入数据库和session,参数值来值相应插件(所以其它插件必须先于本插件安装),返回值将被赋给login参数。
- keyword:login参数名,默认为login。
- dbkeyword:数据库插件的参数名,默认为db。
- sessionkeyword:session插件的参数名,默认为session
无可用route参数
源码已发在github。
0 0
- 几个bottle插件
- bottle的几个小坑
- Bottle的插件与view装饰器冲突问题
- Eclipse的几个插件
- jquery的几个插件
- Maven的几个插件
- 几个实用插件搜集
- 几个Jquery插件使用
- 几个jquery插件
- 分享几个Tooltips插件
- Firefox 几个常用插件
- 几个JQuery插件
- 几个FireFox的插件
- 几个常用maven插件
- Chrome的几个插件
- Unity 几个插件
- jQuery 的几个插件
- BOTTLE Tutorial
- 每天一点matlab——提取图像中的小圆圈
- 三大Javaweb框架的工作原理--Struts2+Hibernate+Spring3
- iOS的二维码扫描
- Android-Material Design布局之第一曲
- 流形学习入门篇1
- 几个bottle插件
- SQL Server之连接
- Java的三种注释 Javadoc标记*
- 编译原理实验一:为PL/0语言编写一个词法分析程序
- java基本知识(一)
- Problems with JSPDF and AutoTable
- java中的内部类总结
- poj2240Arbitrage【floyd】
- Java 如何有效地避免OOM:善于利用软引用和弱引用