0

我正在尝试将应用程序与 Yahoo! 集成。需要 oauth 身份验证才能访问受保护数据的 API。

我正在使用python-oauth2并按照 Yahoo 的Oauth Authorization Flow文档中列出的步骤进行操作。我已经能够完成与 Yahoo 协商访问令牌的所有步骤,但似乎无法使用令牌进行身份验证

这是我的代码:

import oauth2 as oauth

def list_users(token):
    # token is the access token i save in the DB
    oauth_token = oauth.Token(token.token, token.secret)
    consumer = oauth.Consumer(key=settings.OATH_CONSUMER_KEY, 
                              secret=settings.OATH_SECRET)
    client = oauth.Client(consumer, oauth_token)
    resp, content = client.request((LIST_USERS_URL), "GET")
    return content

但是,我能得到的只是一条错误消息,上面写着“请提供有效的凭据。OAuth oauth_problem="signature_invalid", realm="yahooapis.com"”

我在这里做错了什么?到目前为止,其他一切都很顺利。

4

1 回答 1

0

嗯,我觉得有点害羞。所以事实证明,当您访问无效的 API 调用时,雅虎也会抛出这个确切的错误。因此,就我而言,当我必须指定子 API 时,我正在访问根 API。故事的寓意:请注意 oauth 错误可能代表您的应用程序/代码中的其他问题。

于 2011-11-25T20:41:35.970 回答