无法检索oauth的访问令牌

时间:2019-08-02 12:43:29

标签: python oauth jira

我正在尝试为通过REST API从JIRA服务器检索数据的应用程序实现OAuth。我能够构造和使用授权URL,并获得一条消息,指示我在使用应用程序时已经成功授权了我的应用程序。但是,当我随后尝试请求访问令牌时,总是得到内容为“ oauth_problem = token_rejected”的响应代码401。

我正在使用Python 3,并在jirashell中拆解了“ oauthdance”函数中的代码,以查看发生故障的位置。我没有使用回调uri,因此我将'oob'指定为回调,并且在授权应用程序后可以在浏览器中看到验证字符串。

oauth = OAuth1(consumer_key,
signature_method=SIGNATURE_RSA, rsa_key=key_cert_data, resource_owner_key=request_token, resource_owner_secret=request_token_secret, verifier=<string copied from browser>
)
r = requests.post(
server + '/plugins/servlet/oauth/access-token', verify=verify, auth=oauth)

我希望这段代码可以检索访问令牌,但是它将返回401响应。 request_token和request_token_secret似乎是有效的,并且是通过request-token servlet检索的。

1 个答案:

答案 0 :(得分:0)

我在这里找到了答案:https://community.developer.atlassian.com/t/java-oauth-example-does-not-work/3779/2

与OAuth一起使用的使用者密钥区分大小写。我将其更改为与管理员在JIRA中输入的值完全匹配,并获得了访问令牌。