【问题标题】:Python oauth/flask, how to pass arguments from decorated functionPython oauth/flask,如何从装饰函数传递参数
【发布时间】:2018-09-09 08:50:51
【问题描述】:

我需要在烧瓶内部调用@oauth.token_handler 的方法。 签名如下:

@oauth.token_handler
def access_token(*args, **kwargs):
    return None

所以它在内部调用了 token_handler() 的实现。 我试着打电话

response = access_token("", {'grant_type':'password'})

希望 oauth 可以检索方法中的参数,但它不起作用。

400 {"error": "unsupported_grant_type"}

Oauth 找不到数据(对我来说不足为奇)

当 curl 方法按预期工作时:

curl -k -X POST -d "client_id=f9O7kapzXnK1gYAxxxxxxx&grant_type=password&username=blah&password=pass" http://localhost:5001/oauth/token

我的问题是,如何在内部伪造对 oauth 的调用,以便它可以检索所有信息(grant_type、client_id 等...)。因为目前,我尝试了没有运气。

注意:我知道 oauth 应该从客户端调用;但是在这里,这个过程是一个人向我发送他/她的 id 配置文件的提供程序凭据,我检查凭据是否正常,然后我使用自己的 oauth 提供程序创建一个内部帐户并将 access_token 发送给他们我的应用程序的资源。 我的问题是我不知道如何使用正确的参数调用 access_token() 。 Flask-oauth 找不到我的论点。

文档可以在这里找到: http://flask-oauthlib.readthedocs.io/en/latest/api.html

【问题讨论】:

    标签: python flask python-decorators flask-oauthlib


    【解决方案1】:

    我是 Flask-OAuthlib 的作者。不得不说,设计的不太好,强烈建议大家使用Authlib。这是example of OAuth 2 provider

    【讨论】:

      猜你喜欢
      • 2017-12-13
      • 2021-11-21
      • 1970-01-01
      • 2021-08-06
      • 2022-12-05
      • 2016-02-14
      • 2017-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多