当前位置: 首页 > news >正文

jira创建条目rest实用脚本

最近在搞crash崩溃分析,直接把解析到的信息录入jira系统进行跟踪;

经历了多次碰壁后终于调通,现记录一下

实用json请求脚本如下:

{"fields":{"project":{"id":"10945"},"issuetype":{"id":"10103"},"summary":"%s","description":"%s","components":[{"id":"16001"}],"versions":[{"id":"16600"}],"customfield_12108":{"id":"12972"},"customfield_12109":{"id":"12974"},"priority":{"id":"10102"},"security":{"id":"10600"},"assignee":{"name":"%s"}}}

两个注意点:

1、代码里%s  是我这边他要替换的字符串;

2、上面的id值需要自己抓包来确定,每个project各id值是不一样的,

      一般抓包工具是Charles和Fiddler;

jira建单官方示例如下:

The Jira Cloud platform REST API

// The payload definition using the Jackson library
JsonNodeFactory jnf = JsonNodeFactory.instance;
ObjectNode payload = jnf.objectNode();
{ObjectNode fields = payload.putObject("fields");{ObjectNode assignee = fields.putObject("assignee");{assignee.put("id", "5b109f2e9729b51b54dc274d");}ArrayNode components = fields.putArray("components");ObjectNode components0 = components.addObject();{components0.put("id", "10000");}fields.put("customfield_10000", "09/Jun/19");fields.put("customfield_20000", "06/Jul/19 3:25 PM");ArrayNode customfield_30000 = fields.putArray("customfield_30000");customfield_30000.add("10000");customfield_30000.add("10002");fields.put("customfield_40000", "Occurs on all orders");fields.put("customfield_50000", "Could impact day-to-day work.");fields.put("customfield_60000", "jira-software-users");ArrayNode customfield_70000 = fields.putArray("customfield_70000");customfield_70000.add("jira-administrators");customfield_70000.add("jira-software-users");ObjectNode customfield_80000 = fields.putObject("customfield_80000");{customfield_80000.put("value", "red");}fields.put("description", "Order entry fails when selecting supplier.");fields.put("duedate", "2019-03-11");fields.put("environment", "UAT");ArrayNode fixVersions = fields.putArray("fixVersions");ObjectNode fixVersions0 = fixVersions.addObject();{fixVersions0.put("id", "10001");}ObjectNode issuetype = fields.putObject("issuetype");{issuetype.put("id", "10000");}ArrayNode labels = fields.putArray("labels");labels.add("bugfix");labels.add("blitz_test");ObjectNode parent = fields.putObject("parent");{parent.put("key", "PROJ-123");}ObjectNode priority = fields.putObject("priority");{priority.put("id", "20000");}ObjectNode project = fields.putObject("project");{project.put("id", "10000");}ObjectNode reporter = fields.putObject("reporter");{reporter.put("id", "5b10a2844c20165700ede21g");}ObjectNode security = fields.putObject("security");{security.put("id", "10000");}fields.put("summary", "Main order flow broken");ObjectNode timetracking = fields.putObject("timetracking");{timetracking.put("originalEstimate", "10");timetracking.put("remainingEstimate", "5");}ArrayNode versions = fields.putArray("versions");ObjectNode versions0 = versions.addObject();{versions0.put("id", "10000");}}ObjectNode update = payload.putObject("update");{ArrayNode worklog = update.putArray("worklog");ObjectNode worklog0 = worklog.addObject();{ObjectNode add = worklog0.putObject("add");{add.put("started", "2019-07-05T11:05:00.000+0000");add.put("timeSpent", "60m");}}}
}// Connect Jackson ObjectMapper to Unirest
Unirest.setObjectMapper(new ObjectMapper() {private com.fasterxml.jackson.databind.ObjectMapper jacksonObjectMapper= new com.fasterxml.jackson.databind.ObjectMapper();public <T> T readValue(String value, Class<T> valueType) {try {return jacksonObjectMapper.readValue(value, valueType);} catch (IOException e) {throw new RuntimeException(e);}}//这里可以打印自己请求的jsonpublic String writeValue(Object value) {try {return jacksonObjectMapper.writeValueAsString(value);} catch (JsonProcessingException e) {throw new RuntimeException(e);}}
});// This code sample uses the  'Unirest' library:
// http://unirest.io/java.html
HttpResponse<JsonNode> response = Unirest.post("https://your-domain.atlassian.net/rest/api/2/issue").basicAuth("email@example.com", "<api_token>").header("Accept", "application/json").header("Content-Type", "application/json").body(payload).asJson();System.out.println(response.getBody());

这里可以打印自己发送的json脚本

   //这里可以打印自己请求的jsonpublic String writeValue(Object value) {System.out.println("writeValue=====" + value);try {return jacksonObjectMapper.writeValueAsString(value);} catch (JsonProcessingException e) {throw new RuntimeException(e);}}

在这里给自己做个笔记

相关文章:

jira创建条目rest实用脚本

最近在搞crash崩溃分析&#xff0c;直接把解析到的信息录入jira系统进行跟踪&#xff1b; 经历了多次碰壁后终于调通&#xff0c;现记录一下 实用json请求脚本如下&#xff1a; {"fields":{"project":{"id":"10945"},"issuety…...

红外/可见光图像配准融合

红外/可见光图像配准融合 根据文献【1】&#xff0c;对于平行光轴的红外可见光双目配置进行图像配准&#xff0c;主要的限制是图像配准只是对特定的目标距离&#xff08;Dtarget&#xff09;有效。并排配置的配准误差 δx&#xff08;以像素表示&#xff09;的数学表达式为&…...

更高效稳定 | 基于ACM32 MCU的编程直流电源应用方案

随着电子设备的多样化发展&#xff0c;面对不同的应用场景&#xff0c;需要采用特定的供电电源。因此&#xff0c;在电子产品的开发测试过程中&#xff0c;必不可少使用编程直流电源来提供测试电压&#xff0c;协助完成初步的开发测试过程。 编程直流电源概述 编程直流电源结构…...

postgresql创建一个只读账户指定数据库

要在 PostgreSQL 中创建一个只读账户&#xff0c;您可以按照以下步骤进行操作&#xff1a; 1. **登录到 PostgreSQL&#xff1a;** 使用具有足够权限的管理员账户&#xff08;通常是 "postgres" 用户&#xff09;连接到 PostgreSQL 数据库。 2. **创建只读账户&…...

CSDN编程题-每日一练(2023-08-25)

CSDN编程题-每日一练&#xff08;2023-08-25&#xff09; 一、题目名称&#xff1a;影分身二、题目名称&#xff1a;小鱼的航程(改进版)三、题目名称&#xff1a;排查网络故障 一、题目名称&#xff1a;影分身 时间限制&#xff1a;1000ms内存限制&#xff1a;256M 题目描述&am…...

前端面试:【前端工程化】构建工具Webpack、Parcel和Rollup

嗨&#xff0c;亲爱的前端开发者&#xff01;在现代Web开发中&#xff0c;前端工程化变得愈发重要。构建工具如Webpack、Parcel和Rollup帮助我们自动化任务、管理依赖、优化性能等。本文将深入探讨这三个前端构建工具&#xff0c;帮助你了解它们的优点和用途。 1. Webpack&…...

大型企业是否有必要进行数字化转型?

在数字化、信息化、智能化蓬勃发展的今天&#xff0c;初创公司可以很轻易的布局规划数字化发展的路径。而对于大型企业而言&#xff0c;其已经形成了较为成熟稳固的业务及组织架构&#xff0c;是否还有必要根据自身行业发展特点寻求数字化转型&#xff1f;&#xff08;比如制造…...

05有监督学习——神经网络

线性模型 给定n维输入&#xff1a; x [ x 1 , x 1 , … , x n ] T x {[{x_1},{x_1}, \ldots ,{x_n}]^T} x[x1​,x1​,…,xn​]T 线性模型有一个n维权重和一个标量偏差: w [ w 1 , w 1 , … , w n ] T , b w {[{w_1},{w_1}, \ldots ,{w_n}]^T},b w[w1​,w1​,…,wn​]T,b 输…...

JavaWeb_LeadNews_Day7-ElasticSearch, Mongodb

JavaWeb_LeadNews_Day7-ElasticSearch, Mongodb elasticsearch安装配置 app文章搜索创建索引库app文章搜索思路分析具体实现 新增文章创建索引思路分析具体实现 MongoDB安装配置SpringBoot集成MongoDB app文章搜索记录保存搜索记录思路分析具体实现 查询搜索历史删除搜索历史 搜…...

redux中间件理解,常见的中间件,实现原理。

文章目录 一、Redux中间件介绍1、什么是Redux中间件2、使用redux中间件 一、Redux中间件介绍 1、什么是Redux中间件 redux 提供了类似后端 Express 的中间件概念&#xff0c;本质的目的是提供第三方插件的模式&#xff0c;自定义拦截 action -> reducer 的过程。变为 actio…...

麒麟系统上安装 MySQL 8.0.24

我介绍一下在麒麟系统上安装 MySQL 8.0.24 的详细步骤&#xff0c;前提是您已经下载了 mysql-8.0.24-linux-glibc2.12-x86_64.tar.xz 安装包。其实安装很简单&#xff0c;但是有坑&#xff0c;而且问题非常严重&#xff01;由于麒麟系统相关文章博客较少&#xff0c;导致遇到了…...

vue 展开和收起

效果图 代码块 <div><span v-for"(item,index) in showHandleList" :key"item.index"><span>{{item.emailFrom}}</span></span><span v-if"this.list.length > 4" click"showAll !showAll">{…...

限制立方样条(RCS)中的P for overall和P for nonlinear的计算

最近不少人私信我&#xff0c;说有些SCI文章报了两个P值一个是P for overall,一个是P for nonlinear,就像下图这样&#xff0c;问我P for overall怎么计算。 P for overall我也不清楚是什么&#xff0c;有些博主说这个是总效应的P值&#xff0c;但是我没有找到相关出处。但是怎…...

vue3+ts引入echarts并实现自动缩放

第一种写法&#xff08;不支持随页面大小变化而缩放&#xff09; 统一的HTML页面 <div class"content_box" ref"barChart" id"content_box"></div>TS语法 <script setup lang"ts">import * as echarts from echar…...

Compressor For Mac强大视频编辑工具 v4.6.5中文版

Compressor for Mac是苹果公司推出的一款视频压缩工具&#xff0c;可以将高清视频、4K视频、甚至是8K视频压缩成适合网络传输或存储的小文件。Compressor支持多种视频格式&#xff0c;包括H.264、HEVC、ProRes和AVC-Intra等&#xff0c;用户可以根据需要选择不同的压缩格式。 …...

maven工程的目录结构

https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html maven工程的目录结构&#xff1a; 在maven工程的根目录下面&#xff0c;是pom.xml文件。此外&#xff0c;还有README.txt、LICENSE.txt等文本文件&#xff0c;便于用户能够…...

5.1 webrtc线程模型

那从今天开始呢&#xff1f;我们来了解一下y8 tc线程相关的内容&#xff0c;那在开始之前呢&#xff1f;我们先来看一下&#xff0c;我们本章都要讲解哪些知识&#xff1f; 那第一个呢&#xff1f;是线程的基础知识&#xff0c;这块内容呢&#xff1f;主要是为大家做一下回顾&a…...

【Linux网络】Cookie和session的关系

目录 一、Cookie 和 session 共同之处 二、Cookie 和 session 区别 2.1、cookie 2.2、session 三、cookie的工作原理 四、session的工作原理 一、Cookie 和 session 共同之处 Cookie 和 Session 都是用来跟踪浏览器用户身份的会话方式。 二、Cookie 和 session 区别 2.…...

android 硬编码保存mp4

目录 java imagereader编码保存 java NV21toYUV420SemiPlanar 编码保存视频用&#xff1a; imageReader获取nv21 代码来自博客&#xff1a; 【Android Camera2】彻底弄清图像数据YUV420_888转NV21问题/良心教学/避坑必读!_yuv420888转nv21_奔跑的鲁班七号的博客-CSDN博客 …...

gitlab合并分支

我的分支为 cheng 第一步&#xff1a; 增加新的代码 第二步&#xff1a;提交并推送 第三步&#xff1a;打开gitlab&#xff0c;找到对应项目 这样就成功把cheng分支合并到dev-test分支了...

Anthropic收购Stainless:AI Agent时代的连接革命

Anthropic收购Stainless&#xff1a;AI Agent时代的连接革命 1. 引言&#xff1a;从“回答”到“行动”的AI范式转移 1.1 收购概况&#xff1a;Anthropic于2026年5月宣布收购Stainless 2026年5月&#xff0c;AI领域迎来了一项颇具深意的收购案&#xff1a;Anthropic正式宣布收购…...

从零到一:vue-print-nb插件在Vue项目中的实战打印方案

1. 为什么选择vue-print-nb插件 在Vue项目中实现打印功能&#xff0c;开发者通常会面临多种选择。传统的window.print()方法虽然简单&#xff0c;但存在明显的局限性&#xff1a;无法精确控制打印区域、难以自定义打印样式、对移动端支持不佳等。这时候&#xff0c;一个专门为V…...

RT-Thread Smart用户态开发:基于xmake的嵌入式高性能应用构建实践

1. 项目概述与核心价值最近在嵌入式圈子里&#xff0c;和几位做工业网关和智能设备的朋友聊天&#xff0c;大家普遍有个痛点&#xff1a;项目从单片机往更高性能的处理器&#xff08;比如Cortex-A系列&#xff09;迁移时&#xff0c;开发体验有点“开倒车”。在资源受限的单片机…...

告别FTP!用Go写的Filebrowser,一个命令搞定Windows/Linux跨平台文件管理

告别FTP&#xff01;用Go语言构建的Filebrowser&#xff0c;一条命令实现全平台文件管理革命 在服务器管理和跨平台文件共享的日常工作中&#xff0c;传统FTP工具早已显露出诸多不便&#xff1a;复杂的客户端配置、不直观的界面操作、安全隐患频发。而现代开发者需要的&#xf…...

ComfyUI Portrait Master中文版:终极AI肖像提示词生成指南

ComfyUI Portrait Master中文版&#xff1a;终极AI肖像提示词生成指南 【免费下载链接】comfyui-portrait-master-zh-cn 肖像大师 中文版 comfyui-portrait-master 项目地址: https://gitcode.com/gh_mirrors/co/comfyui-portrait-master-zh-cn ComfyUI Portrait Master…...

Perplexity不是越低越好!资深NLP架构师亲授:3类典型查询场景下的阈值黄金区间

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;Perplexity不是越低越好&#xff01;资深NLP架构师亲授&#xff1a;3类典型查询场景下的阈值黄金区间 Perplexity&#xff08;困惑度&#xff09;常被误认为语言模型性能的“万能标尺”&#xff0c;但实际部署…...

求职路上的守护与成长

你有没有过这样的时刻——深夜对着海量的招聘信息发呆&#xff0c;投了无数简历却石沉大海&#xff0c;突然觉得前途一片迷茫&#xff0c;特别无助&#xff1f;记得有个学生&#xff0c;为了进心仪的央企准备了半年&#xff0c;却在二面屡屡受挫。那天老师陪他复盘到凌晨&#…...

枚举进阶:从常量集合到业务逻辑承载者的实战扩展技巧

1. 项目概述&#xff1a;从“能用”到“好用”的枚举进阶之路在软件开发中&#xff0c;枚举&#xff08;Enum&#xff09;是我们再熟悉不过的基础工具了。它把一组有限的、具名的常量组织在一起&#xff0c;让代码意图更清晰&#xff0c;避免“魔法数字”满天飞。但不知道你有没…...

几十人团队跨部门共享大文件难?企业网盘选型必须知道的 3 个标准(含 5 款网盘实测)

企业 IT 和财务在做工具选型时&#xff0c;常常把网盘的“投资回报率&#xff08;ROI&#xff09;”简单等同于“多少钱买多少 GB 的存储空间”。但对于一个几十人的活跃团队来说&#xff0c;每天跨部门大文件传输引发的网络拥堵、向外部客户分享资料时的漫长等待与沟通摩擦&am…...

RK3588 LGA核心板:高性能嵌入式开发的模块化解决方案

1. 项目概述&#xff1a;当旗舰SoC遇见极致封装最近在嵌入式圈子里&#xff0c;一个“小而强”的组合引起了我的注意&#xff1a;瑞芯微的旗舰级SoC RK3588&#xff0c;被塞进了一个极其紧凑的LGA封装里&#xff0c;做成了名为SOM-3588-LGA的核心板&#xff0c;并且已经现货发售…...