这里有两个decorator我想合并,因为它们非常相似,区别在于如何处理未经身份验证的用户。我希望有一个单独的装饰器,我可以打电话给你一个论点。在# Authentication decorator for routes

# Will redirect to the login page if not authenticated

def requireAuthentication(fn):

def decorator(**kwargs):

# Is user logged on?

if "user" in request.session:

return fn(**kwargs)

# No, redirect to login page

else:

redirect('/login?url={0}{1}'.format(request.path, ("?" + request.query_string if request.query_string else '')))

return decorator

# Authentication decorator for routes

# Will return an error message (in JSON) if not authenticated

def requireAuthenticationJSON(fn):

def decorator(**kwargs):

# Is user logged on?

if "user" in request.session:

return fn(**kwargs)

# No, return error

else:

return {

"exception": "NotAuthorized",

"error" : "You are not authorized, please log on"

}

return decorator

目前,我正在为特定的路线使用这些装饰器,例如

^{pr2}$

我更喜欢这样:@get('/day/')

@helpers.requireAuthentication()

def day():

...

@get('/night/')

@helpers.requireAuthentication(json = True)

def night():

...

我正在使用瓶子框架来使用python3.3。有可能做我想做的事吗?怎样?在

python 修饰符和装饰器_将两个python装饰器组合到on中相关推荐

  1. python 描述符有什么用_介绍python描述符的意义

    你也许经常会听到「描述符」这个概念,但是由于大多数的程序员很少会使用到他,所以可能你并不太清楚了解它的原理,python视频教程栏目将详细介绍 推荐(免费):python视频教程 但是如果你想自己的事 ...

  2. python修饰符的理解_python函数修饰符@的使用方法解析

    这篇文章主要介绍了python函数修饰符@的使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python函数修饰符@的作用是为现有函数增 ...

  3. python @修饰符_数据结构与算法之8——抽象数据类型与python类

    就算你是特别聪明,也要学习,从头学起!--(俄国)屠格涅夫 本篇文章要说的主要是数据结构与算法和python中关于类(Class)以及异常(Error)的一些基础,虽然很简单,但是必须非常重视.只有在 ...

  4. python @修饰符_Python基础(面向对象之类成员与修饰符)

    本篇将介绍Python 类的成员.类成员修饰符.类的特殊成员. 类的成员可以分为三大类:字段.方法.属性 1.字段: 也可理解为变量,分为: 普通字段:保存在对象中,访问时通过"对象.字段名 ...

  5. python修饰符作用_python函数修饰符@的使用

    python函数修饰符@的作用是为现有函数增加额外的功能,常用于插入日志.性能测试.事务处理等等. 创建函数修饰符的规则: (1)修饰符是一个函数 (2)修饰符取被修饰函数为参数 (3)修饰符返回一个 ...

  6. python修饰符用法_c#教程之C#语言中的修饰符汇总

    https://www.xin3721.com/eschool/python.html 修饰符是用于限定类型以及类型成员的申明的一种符号. 下面主要从C#中的访问修饰符,作用于类和结构的修饰符,用在方 ...

  7. python @修饰符_python函数修饰符@的使用方法解析

    python函数修饰符@的作用是为现有函数增加额外的功能,常用于插入日志.性能测试.事务处理等等. 创建函数修饰符的规则: (1)修饰符是一个函数 (2)修饰符取被修饰函数为参数 (3)修饰符返回一个 ...

  8. python @修饰符_Python修饰符,返回替换了一个或多个参数的函数

    您必须返回部分作为装饰结果:def decor(func): return partial(func, v=100) 然而,这个总是设置v=100,即使您按位置为v传递了另一个值.你还是会有同样的问题 ...

  9. Python修饰符--函数修饰符 “@”

    Python函数修饰符,"@",与其说是修饰函数倒不如说是引用.调用它修饰的函数. 举个栗子,下面的一段代码,里面两个函数,没有被调用,也会有输出结果: def test(f):p ...

最新文章

  1. -y表示自动安装,不需要每项手动确认输入 Yes
  2. 中小型制造企业如何玩转MES系统?
  3. 解决Android emulator PANIC: Missing emulator engine program for ‘x86‘ CPU.
  4. (一:NIO系列)JAVA NIO 简介
  5. mysql的in和not in的用法(特别注意not in结果集中不能有null)
  6. 试题导入mysql乱码_解决Mysql导入乱码问题
  7. C++longest common string最长公共字符串的实现(附完整源码)
  8. 云服务器40g能装sqlserver_双十一买2核4G云服务器,哪里更便宜
  9. [转] 实战 SSH 端口转发
  10. __declspec(naked)和__asm编写实践总结
  11. 《李焕英》票房反超,全靠《唐探3》衬托?
  12. Chrome 插件开发与本地程序交互流程
  13. spring所需包下载
  14. node socketlog
  15. unable to save settings.xml error 拒绝访问
  16. 学海无涯!马士兵的Java教程
  17. 【SpringBoot系列】自动装配原理
  18. android 工具栏透明,Android 系统状态栏沉浸式/透明化完整解决方案
  19. 智能车八邻域图像算法
  20. 浅析栈指针ESP和帧指针EBP

热门文章

  1. Micromedia Flash Player已终止一项可能不安全的操作的解决办法
  2. 腾讯云服务器1M带宽下载速度怎么样?慢不慢?
  3. 【沙发管家】夏普电视怎么装软件?怎么才能看免费电影,电视直播?
  4. 主动推迟面试时间是面试的大忌
  5. 计算机组装从光盘启动,如何用光盘安装电脑系统
  6. Java实现 洛谷 P1103 书本整理
  7. 机器视觉光源的作用及分类
  8. 面试经验:我是如何得到谷歌、脸书和亚马逊offer的?
  9. c语言减治法求a的n次方算法,拜托,面试别再问我斐波那契数列了!!!
  10. java xml格式验证_Java中对XML文件的校验