- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当我尝试使用 @auth.login_required
装饰器访问路由时,系统会提示我输入用户名和密码的窗口。输入此信息后,verify_password
函数的参数username_or_token
和password
为''
。为什么数据是空的?
@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
更新
我已将代码简化为:
@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://localhost:8081/myapp/api/token
我还附加了一个 Authorization
header 。
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, !
最佳答案
我经历过类似的OP。如果您使用 mod_wsgi 运行,请确保将 WSGIPassAuthorization On
设置为 documented here .
关于python - Flask-HTTPAuth verify_password 函数未收到用户名或密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29024415/
我目前正在使用 Flask-RESTful 构建 REST API,并使用 Flask-HTTPAuth 来保护一些 put 和 get 方法。我想根据我存储在数据库中的预定义用户权限来允许访问这些方
我被 Flask-httpauth 的 verify_password 困住了。 我有用户名和密码脚本,可以对密码进行哈希处理并将其放入一个简单的文件中。 (是的,不是最安全的,但使用我的知识水平,L
当我尝试使用 @auth.login_required 装饰器访问路由时,系统会提示我输入用户名和密码的窗口。输入此信息后,verify_password 函数的参数username_or_token
我正在创建一个小型 REST 服务。我正在寻找不同的身份验证方法。 对于网站,我使用了模块 Flask-Login。似乎是 session 身份验证。 Flask-HttpAuth 模块提供了 htt
开发一个 Flask 应用程序,该应用程序将具有单独的路由类别来进行身份验证:用户路由和主机路由(想想 Airbnb 的用户和主机差异很大的风格)。 创建单个 verify_password 回调和
我正在尝试使用 Flask-HTTPAuth 创建一个具有基本身份验证的两层身份验证系统。我的应用程序有两条路线,一条位于 / 的基本路线可供任何登录用户访问,一条位于 /admin 的管理路线仅供以
我正在使用 Flask-HTTPAuth 进行身份验证。我想根据请求是否经过身份验证从 View 中显示不同的数据。使用 auth.login_required 装饰 View 只会将其显示给经过身份
我正在尝试有条件地应用装饰器(Flask-HTTPAuth 的 login_required )。如果 sky_is_blue == True,我想应用装饰器,如果为 False,则不应用。 这需要随
我正在尝试启动一个使用 Flask 框架的 Python 服务器。我很难设置 flask 扩展 HTTPBasicAuth。我不确定如何正确设置此扩展程序。请帮忙! 命令输出: C:\Dev Work
代码 package main import ( "fmt" "log" "net/http" "github.com/goji/htt
不知道有没有人用过这个flask extension简化 http-basic-auth。 这个基本没看懂example : users = { "john": "hello", "s
require 'rubygems' require 'twitter' httpauth = Twitter::HTTPAuth.new('myusername', 'mypassword') cl
我是一名优秀的程序员,十分优秀!