1

私は、ユーザーが jira プロジェクトから選択し、特定の jira 課題レポートに使用できる合流ブループリントを開発しています。

両方のインスタンスが互いに正しく接続され、結果が得られますが、管理者としてログインしている場合のみです。通常のユーザーでは、これを取得しています:

<status>
   <status-code>401</status-code>
   <message>This resource requires WebSudo.</message>
</status>

残念ながら、javascript を使用した ajax ポスト リクエストとして、jira サーバーから情報を取得する必要があります。これが私のコードです。

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
            });
        }
    });
}

ajaxで基本認証でログイン情報を使用しようとしましたが、役に立ちませんでした。もちろん、ID をコードにハードコーディングすることはできますが、ID が変更された場合はどうなりますか? それは最善の解決策ではありません。websudo の問題を管理するにはどうすればよいですか?

ありがとう、メリークリスマスと新年あけましておめでとうございます。

4

1 に答える 1