在用于创建问题时,Jira API不起作用

时间:2018-12-12 08:26:47

标签: ajax google-chrome-extension xmlhttprequest jira jira-rest-api

我正在为jira开发chrome扩展程序,该扩展程序从另一个网站的DIV元素获取数据,并使用该数据通过我的chrome扩展程序自动举起jira票证。 问题是,当我在代码中的jira api下面调用时,我遇到了以下错误

content.js:107 POST http://myjira.com:9090/rest/api/2/issue/ 403 (Forbidden)

但是当我在Post Man应用程序中检查我的请求时,一切都很好,并且在Jira筹集了新票。 如果有人可以帮助我解决问题,我将非常感激。 此外,我使用我的个人计算机,而jira在另一台服务器上。 我完全想拥有一个扩展,以便将票务系统与jira集成在一起,而无需访问该站点。 请输入以下代码。 content.js

$(document).ready(function(){

var key = '';
var summary = 'undefined';
var description = '';
var comment = '';
window.setInterval(function () {
    /// call your function here


    console.log($('Div1').html());
    console.log($('Div2').html());
    console.log($('#Div3').html());
    console.log($('Div4').html());


    key = $('.a span:first').html();
    summary = $('#b').html();
    description = $('#r'')').html();
    comment = $('#u').html();

    if (summary == 'undefined') {
        return;
    }
    var data = JSON.stringify({
        "fields": {
            "project": {
                "key": "RTF"
            },
            "summary": "" + summary + "",
            "description":  "" + description + "",
            "issuetype": {
                "self": "http://myjira.com/rest/api/2/issuetype/10111",
                "id": "10111",
                "description": "Service Request",
                "iconUrl": "http:/myjira.com/secure/viewavatar?size=xsmall&avatarId=10720&avatarType=issuetype",
                "name": "MS Task (SR)",
                "subtask": false,
                "avatarId": 10720
            },
            "customfield_10106": {
                "self": "http://myjira.com/rest/api/2/customFieldOption/10476",
                "value": "EMAIL",
                "id": "10476"
            },
            "customfield_10129": [
                {
                    "self": "http://myjira.com/rest/api/2/customFieldOption/10450",
                    "value": "TEST",
                    "id": "10450"
                }
            ],
            "customfield_10188": [
                {
                    "self": "http://myjira.com/rest/api/2/customFieldOption/10469",
                    "value": "Billing",
                    "id": "10469"
                }
            ],
            "customfield_10180": {
                "self": "http://myjira.com/rest/api/2/customFieldOption/11000",
                "value": "Support",
                "id": "11000"
            },
            "assignee": {
                "self": "http://myjira.com/rest/api/2/user?username=e.pirjahandideh",
                "name": "e.jj",
                "key": "e.jj",
                "emailAddress": "e.jj@jj.com",
                "avatarUrls": {
                    "48x48": "http://www.gravatar.com/avatar/68e54d1c135e85b994eb12cb9a3b7b9b?d=mm&s=48",
                    "24x24": "http://www.gravatar.com/avatar/68e54d1c135e85b994eb12cb9a3b7b9b?d=mm&s=24",
                    "16x16": "http://www.gravatar.com/avatar/68e54d1c135e85b994eb12cb9a3b7b9b?d=mm&s=16",
                    "32x32": "http://www.gravatar.com/avatar/68e54d1c135e85b994eb12cb9a3b7b9b?d=mm&s=32"
                },
                "displayName": "Emil jj",
                "active": true,
                "timeZone": "Asia/Tehran"
            },
            "components": [
                {
                    "self": "http://myjira.com/rest/api/2/component/10071",
                    "id": "10071",
                    "name": "RR",
                    "description": "Managed RR"
                }
            ],
            "customfield_10189": {
                "self": "http://myjira.com/rest/api/2/customFieldOption/10489",
                "value": "RR/IT",
                "id": "10489"
            }
        }
    });
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    xhr.addEventListener("readystatechange", function () {
        if (this.readyState === 4) {
            console.log(this.responseText);
        }
    });
    xhr.open("POST", "myjira.com/rest/api/2/issue/");
    xhr.setRequestHeader("authorization", "Basic dasfasegsdfgsdfgsdfg");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("cache-control", "no-cache");
    xhr.setRequestHeader("postman-token", "c6475a5e-6741-6894-5b8e-2350c7c5a176");
    xhr.send(data);
}, 10000);

});

manifest.json

   {
  "manifest_version": 2,
  "name": "Name",
  "description": "Description",
  "browser_action": {
    "default_popup": "popup.html"
  },
  "background": {
    "page": "background.html"
  },
  "version": "1.0",
  "permissions": [
    "http://myjira.com/",
    "http://ticketing2.com"
  ],
  "content_scripts": [
    {
      "matches": [ "http://*/*", "https://*/*"],
      "js": [
        "jquery.js",
        "jquery-ui.min.js",
        "content.js"
      ],

      "run_at": "document_end",
      "all_frames": true
    }

  ]

}

0 个答案:

没有答案