Postman全局注冊方法及對返回數(shù)據(jù)可視化處理
1.全局方法注冊及使用
1.1 注冊
在collection最外層中Pre-request Script中編寫全局方法
// 開發(fā)者本機ip
const globalDevIp = 'http://172.16.65.46:9191'
// 全局變量
pm.globals.set("variable_key", "variable_value");
var moment = require('moment');
var date = new Date();
date = moment(date).format("YYYY-MM-DD HH:mm:ss");
var transNo = moment(date).format("YYYYMMDDHHmmss");
pm.environment.set("req_time", date);
pm.environment.set("transNo", transNo);
pm.environment.set('globalDevIp', globalDevIp)
// 注冊全局方法
pm.globals.set('loadUtils', function loadUtils() {
let utils = {
// 獲取個人編號-依賴于HT000-獲取個人/企業(yè)數(shù)據(jù)(先執(zhí)行HT000)
getPerson: (name) => {
try {
let globalPerson = pm.environment.get('globalPerson');
if (globalPerson && globalPerson.length == 32) {
return globalPerson
}
let tempObj = pm.environment.get('psersonAccountMap');
if (typeof tempObj == 'object') {
return tempObj[name || globalPerson].id
} else {
throw(new Error('在全局配置的HT000中,設(shè)置全局個人編號'))
}
} catch(e) {
const errorMsg = '獲取全局個人編號失敗,' + (e.message || e)
console.error(errorMsg)
throw(new Error(errorMsg))
}
},
// 設(shè)置bizContent和sign簽名
setBizContent: (biz_content) => {
...
},
// 可視化結(jié)果
devRedirectUrl(url) {
if (!url && !url.includes('?')) return
const ip = pm.environment.get('globalDevIp')|| pm.environment.get('api_url_prefix')
const temp = url.split('?')[1].replace('×tamp', '&timestamp')
const redirectUrlWebs = ip + '/#/webs?'+ temp
const redirectUrlApp = ip + '/#/app?'+ temp
/* ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓【開發(fā)專用--重定向】↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ */
pm.visualizer.set(`
<div style="width: 100vw; height: 100vh; font-family: monospace; color:blue; word-bread: pre-wrap; ">
<textarea style="width: 100vw; height: 30%; " readonly>${redirectUrlWebs}</textarea>
<textarea style="width: 100vw; height: 30%; " readonly>${redirectUrlApp}</textarea>
</div>
`)
/* ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑【開發(fā)專用--重定向】↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ */
}
};
return utils;
} + '; loadUtils();');
console.log('全局方法已經(jīng)注冊')
1.2全局方法使用
在業(yè)務(wù)請求中的Pre-request Script引入方法, 如:
const utils = eval(globals.loadUtils); // 全局方法引入
// 獲取默認個人ID;不傳參,取默認值,可傳參:utils.getPerson('賬號')
let personSignerId = utils.getPerson()
2. 可視化
以下內(nèi)容是工作中碰到的一個繁瑣操作,訪問接口后,返回結(jié)果的帶域名地址替換本機ip,然后瀏覽器打開替換后的地址→進行調(diào)試。
PS: 手動修改雖然步驟不多,但每次都要去修改,作為一名合格的懶人,想著對結(jié)果進行二次修改后進行展示。對返回結(jié)果進行二次處理后,并可視化,方便復(fù)制。
另:其實還有更進一步的想法,就是調(diào)用接口后,對數(shù)據(jù)二次處理后,通過postman軟件直接打開chrome瀏覽器訪問目標(biāo)地址。但目前沒有找到該實現(xiàn)方法,有大佬知道的可以指導(dǎo)一下。
可視化操作如下:
在業(yè)務(wù)請求的Tests中,編寫方法或者全局方法注冊

const redirectUrlApp = JSON.parse(responseBody)
pm.visualizer.set(`
<div style="width: 100vw; height: 100vh; font-family: monospace; color:blue; word-bread: pre-wrap; ">
<textarea style="width: 100vw; height: 30%; " readonly>${redirectUrlApp}</textarea>
</div>
`)
或者
let template = `
<div>
<h3>name:{{response.name}}</h3>
<h3>partition:{{response.partition}}</h3>
</div>
`;
pm.visualizer.set(template, {
response: JSON.parse(responseBody)
});
頁面展示在Body下的Visualize,在可視化窗口中,很方便就能全選復(fù)制地址

以上就是Postman全局注冊方法及對返回數(shù)據(jù)可視化處理的詳細內(nèi)容,更多關(guān)于Postman全局注冊數(shù)據(jù)可視化的資料請關(guān)注腳本之家其它相關(guān)文章!
- R語言實現(xiàn)各種數(shù)據(jù)可視化的超詳細教程
- Python Matplotlib數(shù)據(jù)可視化模塊使用詳解
- Python實現(xiàn)數(shù)據(jù)可視化大屏布局的示例詳解
- 詳解Python中四種關(guān)系圖數(shù)據(jù)可視化的效果對比
- 前端框架ECharts?dataset對數(shù)據(jù)可視化的高級管理
- Leaflet?數(shù)據(jù)可視化實現(xiàn)地圖下鉆示例詳解
- MySQL數(shù)據(jù)更新操作的兩種辦法(數(shù)據(jù)可視化工具和SQL語句)
- 使用Python進行數(shù)據(jù)可視化
- 使用Python對網(wǎng)易云歌單數(shù)據(jù)分析及可視化
相關(guān)文章
30個提高Web程序執(zhí)行效率的好經(jīng)驗分享
30個提高Web程序執(zhí)行效率的好經(jīng)驗分享,需要的朋友可以參考下。2011-10-10
設(shè)計高可用和高負載的網(wǎng)站系統(tǒng)的幾個注意事項
隨著網(wǎng)站的運營,用戶訪問量和數(shù)據(jù)存儲量會隨著時間發(fā)生幾何級變化,很快整個系統(tǒng)不堪重負,頻繁出現(xiàn)問題。2011-06-06
php和asp利用Shell.Application來執(zhí)行程序的代碼
關(guān)于用Shell.Application來執(zhí)行程序,在海陽頂端asp木馬里已有示例。用的是ShellExecute 這個方法。2008-12-12

