mirror of https://github.com/certd/certd
perf: 自定义webhook显示详细的错误信息
parent
e3553d4c8c
commit
3254afc756
|
@ -151,7 +151,10 @@ export function getCommonColumnDefine(crudExpose: any, typeRef: any, api: any) {
|
||||||
name: "api-test",
|
name: "api-test",
|
||||||
action: "TestRequest"
|
action: "TestRequest"
|
||||||
},
|
},
|
||||||
order: 999
|
order: 999,
|
||||||
|
col: {
|
||||||
|
span: 24
|
||||||
|
}
|
||||||
},
|
},
|
||||||
column: {
|
column: {
|
||||||
show: false
|
show: false
|
||||||
|
|
|
@ -48,10 +48,11 @@ export class WebhookNotification extends BaseNotification {
|
||||||
title: 'Headers',
|
title: 'Headers',
|
||||||
component: {
|
component: {
|
||||||
name: 'a-textarea',
|
name: 'a-textarea',
|
||||||
|
vModel: 'value',
|
||||||
rows: 3,
|
rows: 3,
|
||||||
},
|
},
|
||||||
helper: '一行一个,格式为key:value',
|
helper: '一行一个,格式为key:value',
|
||||||
required: true,
|
required: false,
|
||||||
})
|
})
|
||||||
headers = '';
|
headers = '';
|
||||||
|
|
||||||
|
@ -83,18 +84,31 @@ export class WebhookNotification extends BaseNotification {
|
||||||
const data = JSON.parse(bodyStr);
|
const data = JSON.parse(bodyStr);
|
||||||
|
|
||||||
const headers: any = {};
|
const headers: any = {};
|
||||||
this.headers.split('\n').forEach(item => {
|
if (this.headers && this.headers.trim()) {
|
||||||
const [key, value] = item.trim().split(':');
|
this.headers.split('\n').forEach(item => {
|
||||||
headers[key] = value;
|
item = item.trim();
|
||||||
});
|
if (item) {
|
||||||
await this.http.request({
|
const [key, value] = item.split(':');
|
||||||
url: this.webhook,
|
headers[key] = value;
|
||||||
method: this.method,
|
}
|
||||||
headers: {
|
});
|
||||||
'Content-Type': `${this.contentType}; charset=UTF-8`,
|
}
|
||||||
...headers,
|
|
||||||
},
|
try {
|
||||||
data: data,
|
await this.http.request({
|
||||||
});
|
url: this.webhook,
|
||||||
|
method: this.method,
|
||||||
|
headers: {
|
||||||
|
'Content-Type': `${this.contentType}; charset=UTF-8`,
|
||||||
|
...headers,
|
||||||
|
},
|
||||||
|
data: data,
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
if (e.response?.data) {
|
||||||
|
throw new Error(e.message + ',' + JSON.stringify(e.response.data));
|
||||||
|
}
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue