当我尝试使用@ auth.login_required装饰器访问路由时,系统会提示我输入我的用户名和密码.输入此信息后,verify_password函数的参数username_or_token和密码为”.为什么数据是空的?

@auth.verify_password

def verify_password(username_or_token, password):

# first try to authenticate by token

user = USER.verify_auth_token(username_or_token)

logger.debug("user = %r", user)

logger.debug("Entered USEREMAIL = %r" , username_or_token)

logger.debug("entered password = %r" , password)

if not user:

# try to authenticate with username/password

user = session.query(USER).filter_by(USEREMAIL=username_or_token).first()

if not user or not user.verify_password(password):

return False

g.user = user

return True

UPDATE

我已将代码简化为:

@auth.verify_password

def verify_password(username, password):

logger.debug("username = %s" % username)

logger.debug("password = %s" % password)

return true

@app.route('/api/token')

@auth.login_required

def get_auth_token():

return "Hello, %s!" % auth.username()

我正在使用Advanced Rest Client测试此功能.

HTTP://本地主机:8081 / MyApp的/ API /令牌

我还附上了一个Authorization标头.

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36

Authorization: Basic YXNkOmFzZA==

Accept: */*

Accept-Encoding: gzip, deflate, sdch

Accept-Language: en-US,en;q=0.8,zh-CN;q=0.6,zh-TW;q=0.4

这导致输出:

你好, !

日志文件:

username =

password =

我也从未被提示输入我的安全凭证.

另一个奇怪的事情是,即使我在verify_password中将return更改为false,我仍然得到相同的输出:Hello ,!

python password函数_python – Flask-HTTPAuth verify_password函数未接收用户名或密码相关推荐

  1. python日期函数_python 时间及日期函数

    本人最近新学python ,用到关于时间和日期的函数,经过一番研究,从网上查找资料,经过测试,总结了一下相关的方法. import time import datetime '''时间转化为时间戳: ...

  2. python数字类型转换函数_Python的数据类型转换函数

    玩蛇网这篇文章给大家介绍关于,Python数据类型的转换函数. Python提供了一些可以把某个值从一种数据类型,转换成为另一种数据类型的内置函数和方法.int函数可以将任何可以转换为整型的值转换为整 ...

  3. python hist函数_Python主要数据探索函数

    Python中用于数据探索的库主要是pandas(数据分析)和 Matplotlib(数据可视化),其中pandas提供了大量的与数据库探索相关的函数,这些数据探索函数壳大致分为统计特征函数与统计绘图 ...

  4. python阶乘匿名函数_python的高阶函数与匿名函数

    一.高阶函数的定义 高阶函数:就是把函数当成参数传递的一种函数,例如: defadd(x,y,f):return f(x)+f(y)print(add(-8,11,abs) 结果:19 解释: 1.调 ...

  5. python中itemgetter函数_Python中的sorted函数以及operator.itemgetter函数

    operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号(即需要获取的数据在对象中的序号),下面看例子. a = [1,2,3] >>> b=op ...

  6. python拷贝文件函数_Python Set集合,函数,深入拷贝,浅入拷贝,文件处理

    1.Set基本数据类型 a.set集合,是一个无序且不重复的元素集合 classset(object):"""set() -> new empty set obje ...

  7. python中range 函数_Python中的range函数

    本篇介绍range函数的特点及如何灵活运用. 工具/原料 Python3.7.5 Windows7环境 方法/步骤 1 查看range函数的帮助信息, range(stop) range(start, ...

  8. 什么是python函数_Python之什么是函数

    Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数 abs,它接收一个参数. 可以直接从Python的官方网站查看文档: http:// ...

  9. python getattr函数_Python中的getattr()函数详解

    在计算机编程中,自省是指这种能力:检查某些事物以确定它是什么.它知道什么以及它能做什么.自省向程序员提供了极大的灵活性和控制力. 自省(introspection),在计算机编程领域里,是指在运行时来 ...

最新文章

  1. 【Linux 内核】CFS 调度器 ① ( CFS 完全公平调度器概念 | CFS 调度器虚拟时钟 Virtual Runtime 概念 | 四种进程优先级 | 五种调度类 )
  2. Python基础类型之元组
  3. MFC:多窗口函数、变量调用
  4. 使用钉钉接收gitlab仓库的推送消息
  5. a标签点击跳转失效--IE6、7的奇葩bug
  6. 软件定义的数据中心已经来临
  7. 逻辑性最强的React Native环境搭建与调试
  8. python接口测试第二期_Python接口测试实战2 - 使用Python发送请求
  9. ViewState的原理,应用场合,注意事项
  10. 95-190-450-源码-window-Trigger-ContinuousProcessingTimeTrigger
  11. 【FFMPEG系列】之windows下编译FFMPEG篇----之二(MSYS2)
  12. matlab的和操作
  13. linux磁盘管理-vmware workstation模拟共享存储。
  14. 使用KELI调试单片机代码时,一定要用Open Project的方式打开。
  15. linux服务器上怎么运行exe,用Linux服务器运行exe文件
  16. 八、图像金字塔(高斯金字塔、拉普拉斯金字塔)
  17. tp框架中构造函数__construct()与初始化函数_initialize()的区别
  18. 解决在win2003 enterprise上搭建IIS遇到的“需要Service Pack 2 CD-Rom 上的文件“问题
  19. 数据库死锁的预防与解除
  20. 娱乐圈明星集体考编?靳东官宣煤矿文工团副团长,张艺兴关晓彤苏青加入国家话剧院

热门文章

  1. Flink Forward Asia 2021 正式启动!议题火热征集中!
  2. CodeDay 北京站报名倒计时
  3. 精彩回顾 | Apache Flink x Iceberg Meetup · 上海站
  4. 测试一年多,上线就崩溃!微服务到底应该怎么测试?
  5. 阿里云 Serverless 事件总线 EventBridge 重磅发布
  6. 欢迎参与2020年云栖大会——引领企业基础设施云化
  7. 如何基于Weex实现创新交互体验?手淘开源技术BindingX案例解析
  8. python34.dll_python34.dll下载|python34.dll下载官方版【32位|64位】-太平洋下载中心
  9. 《West Game》入围收入Tpo30的背后,SLG游戏新机会在哪?
  10. 45岁码农用不到2年时间撸出100款扑克游戏