使用 JavaScript 在 Jira 中调用 REST API





5.00/5 (3投票s)
本文档解释了如何在 Atlassian Jira 中编写 JavaScript 代码来调用外部 REST API,并将 json 数据加载到 Jira 自定义字段中。
引言
本文档提供了一个入口点,用于在 Atlassian Jira 中编写 JavaScript 代码来调用外部 REST API,并将 json 数据加载到 Jira 自定义字段中。
背景
在某些情况下,我们希望从第三方应用程序(例如:Java 或 .NET)获取的数据显示在 Jira 的自定义字段中。
这可以通过使用 XMLHttpRequest 编写 JavaScript 代码来实现。
使用代码
为了本文档的目的,我们将使用以下外部 API,该 API 免费且易于在网上获取。您可以点击链接查看生成的 json 数据。
假设我们希望将来自上述 API 链接的 json 数据显示到 3 个字段中 - 建议的项目名称、项目发起人 ADS ID 和第三方名称(见下图)。
我们可以在 Jira 的“创建问题”屏幕上存在的任何自定义字段的“字段配置”中编写 JavaScript 代码来实现。
以下是 JavaScript 代码片段。
代码分析
- 在这里,我们创建了一个
XMLHttpRequest
对象。
XMLHttpRequest
是一个 API,它为客户端和服务器之间的数据传输提供客户端功能。它提供了一种无需完全刷新页面即可从 URL 检索数据的一种简便方法。 - 使用
open()
函数打开给定的 API 链接。 - 通过调用 API 链接生成 json 数据,并将其解析到变量 "
obj
" 中。 - 使用解析后的 json 数据更新 Jira 自定义字段。
顺便说一句:您可以通过右键单击 -> 检查元素来了解任何customfield
的 ID
以下是供您参考的 JavaScript 代码
<script type="text/javascript">
var xhr = new XMLHttpRequest();
xhr.open("GET", "https://teamtreehouse.com/matthew.json", false);
xhr.send();
var obj = JSON.parse(xhr.responseText);
document.getElementById("customfield_10800").value = obj.badges[1].id;
document.getElementById("customfield_10801").value = obj.badges[1].name;
document.getElementById("customfield_10802").value = obj.badges[1].url;
console.log(xhr.status);
console.log(xhr.statusText);
</script>