2017-12-03 7 views
0

Ich bin derzeit verzweifelt der grundlegenden Authentifizierung der Jira Rest API. Hier ist mein Beispielcode ist:Keine Standardauthentifizierung für Jira Rest API mit R möglich

#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)) 

Das ist nur ein Beispiel dafür, was ich versuchte ... Die Antwort ist immer:

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) 

ich die gleiche URL in meinem Browser versucht, (wo ich bin logging) und ich bekomme das erwartete Ergebnis.

Was mache ich falsch?

Grüße

EDIT: Jira ist auf einem Apache-Server ausgeführt wird. Gibt es etwas zu beachten?

Antwort

0

Ich habe ähnliches Problem in Python konfrontiert. Ich konnte mich über das Portal anmelden, aber nicht über die API von jira. In Jira API bekam ich den Fehler Zugriff verweigert. Problem war die URL von JIRA. Durch das Portal, das ich mit derselben URL verwendet habe, habe ich die API eingefügt. Die URL war wie folgt: "https://asc/something", das Problem wird gelöst, wenn ich die URL in der API auf "https://asc-repo/something" ändere. Bitte überprüfen Sie mit JIRA Admin die URL für den Zugriff über API. Try URL wie diese "https://host-repo/jira/rest/api/2/issue/ABC-123

+0

Ok danke für diese Idee. Ich werde das am Montag überprüfen. Was ist die Repo-Variable? – ahLoco

0

Um was ich verstehe, Sie sind die falsche API BASE64 mit codiert die username:password Zeichenfolge mit den tatsächlichen Anmeldeinformationen ersetzt. Gemäß der Dokumentation, ist dies die richtige API für R zu verwenden ist.

Dokumentation link und here

Mit base64enc statt base64_enc sollte Ihr Problem lösen.

Hope this Hilfe s!

+0

Danke für die Idee, aber eigentlich macht es keinen Unterschied, mit welchem ​​Paket ich meine Anmeldeinformationen verschlüsseln. Die Ausgabe ist die gleiche. – ahLoco

Verwandte Themen