Je développe un plan de confluence où un utilisateur peut choisir entre les projets jira et les utiliser pour un rapport de questions spécifiques jira.confluence Demande d'API REST tout en n'étant pas administrateur se termine en erreur 401
les deux instances sont correctement connectées entre elles et j'obtiens des résultats mais seulement si je suis connecté en tant qu'administrateur. avec l'utilisateur normal je reçois ceci:
<status>
<status-code>401</status-code>
<message>This resource requires WebSudo.</message>
</status>
Malheureusement, je dois obtenir les informations du serveur JIRA comme demande de poste ajax avec javascript et voici mon code:
function pickDate(e, state) {
AJS.$('#spLebenStart').datePicker({
overrideBrowserDefault: true
});
getJiraUrl();
}
function getJiraUrl(){
var appUrl = AJS.contextPath() + "/rest/applinks/1.0/applicationlink/type/jira";
$.ajax({
type: 'GET',
url: appUrl,
data: {
key: "value"
},
dataType: "xml",
success: function (xml){
jiraID = $(xml).find("id").text();
},
complete: function(){
getJiraProjects(jiraID);
},
error: function() {
alert("ERROR @ getJiraUrl");
}
});
}
function getJiraProjects(applicationId){
var restUrl = AJS.contextPath() + "/rest/applinks/1.0/entities/"+applicationId+"?os_authType=any";
$.ajax({
type: 'GET',
url: restUrl,
data: {
key: "value"
},
dataType: "xml",
success: function (xml){
jiraProjectKeys = [];
$(xml).find("entity").each(function(){
jiraProjectKeys.push({id: $(this).attr("key"), text: $(this).attr("name")});
});
},
crossDomain: true,
xhrFields: {
withCredentials: true
},
error: function() {
alert("ERROR @ getJiraProjects");
},
complete: function(){
AJS.$('#spSelect').auiSelect2({
placeholder: 'Projekt auswählen...',
data:jiraProjectKeys,
multiple: false
});
}
});
}
j'ai essayé d'utiliser informations de connexion avec l'authentification de base dans ajax mais il n'a pas aidé. Bien sûr, je peux coder l'identifiant dans le code, mais que se passe-t-il s'il est modifié? ce n'est pas la meilleure solution. comment puis-je gérer le problème websudo?
merci et je vous souhaite de joyeuses fêtes et une bonne année.
merci pour votre solution – vandyke
Je suis heureux de vous avoir aidé. Et merci pour ma première réponse acceptée sur SO :) – jannis