问题标签 [flask-login]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
963 浏览

python - 如何和谐运行 Flask-Login、Flask-BrowserID 和 Flask-SQLAlchemy?

整点

我正在尝试使用 Flask(菜鸟!)制作一个相当基本的网站,并且在用户登录系统方面遇到了麻烦。我决定要使用 Flask-Login、Flask-BrowserID (Mozilla Persona) 和 SQLAlchemy。我将让 Persona 成为负责存储用户密码等的部分,一旦用户通过身份验证,我将使用 Flask-Login 来跟踪他们的会话,我将使用 SQLAlchemy 将所有内容存储在一个 sqlite3 数据库。我做了很多弹跳,我想我几乎已经完成了这些功能,但我似乎无法找回特定的错误。

更新 1

根据 davidism 的评论,我不得不将 db.Model 添加到 User 类中。不幸的是,这解决了第一个错误,但现在有一个新错误要处理。追溯在下面找到。

问题

是什么赋予了?我显然错过了一些东西,但我似乎无法找到那是什么。

我一直在使用的资源

附加信息

这是我与 Flask 一起使用的 main.py 和 index.html 以及我得到的 Traceback:

主文件

索引.html

追溯

0 投票
0 回答
358 浏览

python - 烧瓶登录的间歇性登录问题

这是我尝试通过 Flask-login api 登录用户的代码。用户填写用户/密码并通过flask-api登录。我收到用户已登录的自定义消息,这意味着我有 g.user i 不是 none 和 g.user.is-autheticated=true。我还可以看到会话 cookie 和响应标头。

现在奇怪的是如果我尝试关闭窗口并打开一个新窗口。并转到登录页面,该应用程序有时无法对我进行身份验证。虽然我看到相同的 cookie 被发送到服务器。应用程序“有时”无法加载用户。我被重定向到登录页面,要求填写凭据。

在对应用程序进行了一些摆弄之后,我观察到如果我尝试刷新页面几次,应用程序能够很好地验证我的身份。我看到我已再次登录的消息。虽然我没有做任何不同的事情。

如果有人能指出我在这里做错了什么,那将非常感激。

谢谢

0 投票
1 回答
2632 浏览

python - mongoengine ReferenceField mongoengine.errors.ValidationError

需要你的帮助。我尝试使用 mongoengine、flask、flask-login。

我的模型:

我得到当前用户(烧瓶登录):

比在views.py中:

new_post.author = current_user如果new_post.author = Member.objects.get(id=current_user.id)- 工作正常有什么问题。

如果尝试new_post.author = current_user- 得到错误:

谢谢,人们。

0 投票
1 回答
7055 浏览

python - 如何从另一个调用一个 Flask 视图?

我在一个蓝图模块中有一个 JSON API,在另一个模块中有一个 Web 前端。

我想通过在前端视图模板中嵌入一些它需要的 JSON 来减少客户端 JS 代码必须发出的一些 AJAX 请求,然后再将其发送到客户端,就像我发现的这个要点一样

如何从另一个 Flask 视图调用一个 Flask 视图?

我可以直接调用视图函数,但request会对应“外部”请求,这会混淆被调用的 API 函数。我试过使用test_request_context它几乎可以工作,但我不知道如何保持身份验证(我正在使用 Flask-Login)。

0 投票
1 回答
8423 浏览

python - Flask 视图引发 TypeError:'bool' 对象不可调用

我正在尝试在我的 Flask 应用程序中调试一个视图,该视图返回 500 状态并TypeError: 'bool' object is not callable在回溯中出现错误。login_user来自 Flask-Login的视图调用然后返回True以指示登录成功。

我已经调试了,直到现在app_iter = app(environ, start_response)app一个布尔值,True而不是 Flask 应用程序对象。

0 投票
4 回答
24309 浏览

python - 测试 Flask 登录和身份验证?

我正在开发一个 Flask 应用程序并使用 Flask-security 进行用户身份验证(这反过来又在下面使用 Flask-login)。

我有一条需要身份验证的路线,/user. 我正在尝试编写一个单元测试来测试,对于经过身份验证的用户,这将返回适当的响应。

在我的单元测试中,我正在创建一个用户并以该用户身份登录,如下所示:

在测试中current_user返回正确的用户。但是,请求的视图总是AnonymousUser返回current_user.

路线/user定义为:

我很确定我只是没有完全理解测试 Flask 请求上下文是如何工作的。我已经阅读了很多 Flask Request Context 文档,但我仍然不明白如何处理这个特定的单元测试。

0 投票
2 回答
3535 浏览

python - 烧瓶 login_required + 下一个 url 参数

我的应用程序中有一个受保护的视图,它只接受 POST 请求。

当未经授权的用户尝试访问此视图时,我希望他们登录然后被重定向到这里。

现在,我的登录视图如下所示:

所以最终发生的是一个 POST 请求/booking(这是“下一个”参数),我得到一个 NOT ALLOWED 错误。

问题是login()booking(). 我可以解决这个问题,但我不确定如何从中检索原始 POST 表单参数/booking?有什么想法可以解决这个问题吗?

0 投票
8 回答
49531 浏览

python - ImportError:没有名为 flask.ext.login 的模块

我对 flask_login 模块有疑问。

我已经成功安装了 flask_login 模块。同样从命令提示符我可以很容易地运行这个脚本没有错误:

但是当我运行这个脚本时:

我收到错误消息:

我在做什么错误。我对这个烧瓶很陌生。提前致谢。

0 投票
3 回答
8032 浏览

python - 使用烧瓶登录对烧瓶进行单元测试时禁用@login_required

我正在对使用 flask-login 扩展的烧瓶应用程序进行单元测试。

我正在使用 webtest 设置我的所有测试:

但是,当我尝试通过用@login_required 装饰的 self.client.get() 访问 url 时,我收到 401 错误,并显示我无权访问该 url。

根据文档https://flask-login.readthedocs.org/en/latest/#protecting-views 和这个讨论,将“TESTING”的配置值设置为 True 应该禁用登录要求,但这似乎不是为我工作。

有什么建议么?

0 投票
4 回答
1695 浏览

python - 可以制作不使用客户端会话/cookie 的烧瓶登录系统吗?

我正在开发一个供医疗客户使用的 Flask 应用程序。他们的 IT 部门对安全性非常重视,以至于他们在网络范围内禁用了 cookie 和脚本。

幸运的是,wtf-forms 能够通过表单输入的服务器端验证来解决这些问题之一。

但是,我正在挂断登录系统。我已经实现了烧瓶登录,但这显然需要客户端数据,因为在禁用这些功能的浏览器中进行测试时我无法登录。

有什么方法可以创建一个客户端数据为零的登录名?

谢谢您的帮助。