【发布时间】:2019-08-02 12:43:29
【问题描述】:
我正在尝试为通过 REST API 从我们的 JIRA 服务器检索数据的应用程序实现 OAuth。我能够构建和使用授权 url,并在使用时收到一条消息,表明我已成功授权我的应用程序。但是,当我尝试请求访问令牌时,总是得到响应代码 401,内容为“oauth_problem=token_rejected”。
我使用的是 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 检索到的。
【问题讨论】: