Jira Rest API与R无法进行基本身份验证

时间:2017-12-03 13:59:05

标签: r rest basic-authentication jira-rest-api

我目前对Jira Rest API的基本身份验证感到绝望。这是我的示例代码:

  #username = jiraname and not the mailadd
  credentials <- "username:password"
  credentials <- base64_enc(credentials)
  header_auth <- paste0("Basic ",credentials)

  url <- "https://host/jira/rest/api/2/issue/ABC-123"

  res <- GET(url, add_headers(Authorization = header_auth), accept_json())

  parsed_json <- content(res, "parsed")
  parsed_json <- enframe(unlist(parsed_json, recursive = TRUE, use.names = TRUE))

这只是我尝试过的一个例子...... 答案总是:

1 errorMessages1 Sie haben nicht die Berechtigung, den den Vorgang zu sehen. (You don't have the permission to see this issue)
2 errorMessages2                                      Anmeldung erforderlich (Login required)

我在浏览器中尝试了相同的网址(显然我已登录),我得到了预期的结果。

我做错了什么?

问候

编辑: Jira正在Apache服务器上运行。有什么需要考虑的吗?

2 个答案:

答案 0 :(得分:0)

我在python中遇到过类似的问题。我能够通过门户登录,但不能通过jira API登录。在Jira API中,我收到了拒绝错误的访问权限。 问题是JIRA的URL。通过门户网站,我使用相同的URL我正在使用API​​。网址就像这样&#34; https://asc/something&#34;,当我在API中将网址更改为&#34; https://asc-repo/something&#34;时,问题就解决了。 请与JIRA admin交叉核对通过API访问的URL。 尝试这样的网址&#34; https://host-repo/jira/rest/api/2/issue/ABC-123

答案 1 :(得分:0)

根据我的理解,您使用错误的API对BASE64编码用实际凭据替换的username:password字符串。根据文档,这是用于R的正确API。

文档linkhere

使用base64enc代替base64_enc可以解决您的问题。

希望这有帮助!