0

我需要从烧瓶内部调用@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

4

1 回答 1

0

我是 Flask-OAuthlib 的作者。我不得不说,它设计得不好,我强烈建议你使用Authlib。这是OAuth 2 提供者的示例

于 2018-04-13T15:23:52.133 回答