【问题标题】:unable to create issue in jira through jira rest api in javaScript无法通过 javaScript 中的 jira rest api 在 jira 中创建问题
【发布时间】:2018-03-07 17:32:10
【问题描述】:

我想通过 javaScript 代码中的 REST API 调用在 JIRA 中创建一个问题。当我执行以下代码时没有错误,但在 JIRA 中也没有创建问题。我使用相同的 JSON 代码通过“CURL”命令在 JIRA 中创建问题。但我未能使用下面的示例代码创建。任何人都可以帮助解决这个问题。 注意:考虑凭据和 URL 是否正确。

<html>
<head>
<meta charset="ISO-8859-1">
<title>Create Issue</title>
<script type="text/javascript">
function createIssue() {
    var xhttp = new XMLHttpRequest();
     var createJson ='{  "fields": {
         "project":{ 
             "key": "LPS"
             },
             "summary": "creting issue",
             "description": "creating issue from client isde",
             "issuetype": {
                          "id": "10000"
             },
             "priority": {
                          "id": "2"
             },
             "assignee":{
                          "name": "abcd"
             }
   }
}';
    
     
    xhttp.onreadystatechange = function() {
    if ((xhttp.readyState==4) {
      document.getElementById("demo").innerHTML =xhttp.responseText;
    }
  };
  
    xhttp.open("POST", "URL",true);
    xhttp.setRequestHeader("Content-type", "application/json");
    xhttp.setRequestHeader("X-Atlassian-Token", "nocheck");
    xhttp.setRequestHeader('Authorization', 'Basic'+btoa('username:password')); 
    xhttp.send(createJson);
}
</script>
</head>
<body>
<h2>Create Issue</h2>
<button type="button" onclick="createIssue()">createIssue</button>
<p id="demo"> </p>
</body>
</html>

问候, 卡维莎

【问题讨论】:

    标签: javascript json jira-rest-api


    【解决方案1】:

    @Kavitha Yeleti,IMO 使用 name 标签作为父标签 issuetype优先级应该可以解决您的问题,考虑到您的话,凭据和 URL 是正确的。

    我已测试使用以下JSON 创建问题,并且能够成功创建JIRA 中的问题。

    {
     \"fields\":{
        \"project\":{
            \"key\": \"XYZ\"
            },
        \"summary\":\"Support Task\",
        \"description\":\"Support Task\",
        \"issuetype\":{
            \"name\": \"Task\"
            }
        }
    }
    

    除了所有这些更改之外,您还需要在以下行中的 Basic 之后留一个空格:

    xhttp.setRequestHeader('Authorization', 'Basic '+btoa('username:password'));
    

    希望这能很好地回答您的问题!

    如果您遇到任何进一步的问题,请告诉我,以便我可以更新我的答案并提出建议!

    【讨论】:

    • 感谢您的回复,但它仍然不适合我。您能提供任何其他建议吗?
    • 尝试仅使用 issuetype 并暂时删除 priorityassignee - 用于测试目的!
    • 我也尝试过删除优先级和受让人,但它仍然无法正常工作并且没有给出任何响应
    • 您在Basic 之后缺少一个空格,用这一点更新了我的答案 - 请检查@KavithaYeleti!
    • 也尝试在此处提供空间,但仍然无法正常工作
    猜你喜欢
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多