Python Flask 应用程序错误:使用 Flask-Dance 'function'对象没有属性'get'



我正在使用Flask-Dance让用户使用google登录。但是当我转到下面的路线时,它告诉我:"函数"对象没有属性"get"。 我做错了什么?

如果我写"如果不是google.authorized",它也会引发错误。

from flask_dance.contrib.google import make_google_blueprint, google
app.register_blueprint(google_blueprint, url_prefix='/login')
google_blueprint = make_google_blueprint(client_id='client_id', client_secret='client_secret')
@app.route('/google')
def google():
if not google_blueprint.authorized:
return redirect(url_for('google.login'))
account_info = google.get("/plus/v1/people/me")
assert account_info.ok, account_info.text
return "You are {email} on Google".format(email=resp.json()["emails"][0]["value"])

更改函数的名称

从 flask_dance.contrib.google import make_google_blueprint,google

defgoogle((:

您在第 1 行导入google,但稍后在第 7 行定义了一个函数google该函数,该函数从导入中覆盖对象并实质上隐藏它,因此第account_info = google.get("/plus/v1/people/me")行尝试调用您的函数而不是您导入的google模块。

将您的函数重命名为其他名称,例如google_endpoint,它将起作用。

相关内容

最新更新