亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用測試從 Postman 的 JSON 響應中提取特定值?

如何使用測試從 Postman 的 JSON 響應中提取特定值?

三國紛爭 2022-12-22 09:57:23
我需要能夠解析 Postman 響應的 JSON 結果,以便在控制臺輸出中提取名稱值。我的 JSON 看起來像這樣:"total_count": 7,"entries": [    {        "type": "collaboration",        "id": "21829111111",        "created_by": null,        "created_at": "2020-03-24T05:37:09-07:00",        "modified_at": "2020-03-24T05:37:09-07:00",        "expires_at": null,        "status": "accepted",        "accessible_by": {            "type": "group",            "id": "3085402",            "name": "Test",            "group_type": "managed_group"我發現的大多數示例都使用提取的值來創建變量,但我真的只需要一個可以復制和粘貼的簡單列表。我已經使用這段代碼做了類似的事情,但我不確定如何使用這些數據為我們修改它:var response = JSON.parse(responseBody);var usernames = response.map(function(account){    return account.credentials.userName;});console.log(usernames);任何幫助表示贊賞。
查看完整描述

1 回答

?
慕姐8265434

TA貢獻1813條經驗 獲得超2個贊

讓我們來看看它:

var response = JSON.parse(responseBody);

JSON.parse()正在將 JSON 響應作為字符串,并將其轉換為 JS 對象,然后將其存儲在response.

response.map(...)

map()函數在數組上調用,并將函數作為參數。它會為調用它的數組中的每個元素調用一次您提供的函數。

對于您的特定情況,我們需要稍微修改一下,因為response是一個對象,而不是數組,并且您之后的值name嵌套在 的entries數組中response。為了解決這個問題,我們將map()直接調用嵌套數組,并將其設置為一個新變量來存儲結果,如下所示:

var names = response.entries.map(...);

現在,我們可以傳遞map()一個函數,該函數將從條目數組中的每個元素中提取名稱。我們的函數需要接受數組元素作為參數,并返回提取的名稱,以便map()可以將其添加到它正在創建的新數組中。

function(entry) { 
 return entry.accessible_by.name;
}

最后,我們得到這樣的結果:

var response = JSON.parse(responseBody);


var names = response.entries.map(function(entry) {

  return entry.accessible_by.name;

});


console.log(names);

這會將一組名稱輸出到您的瀏覽器控制臺。["Test", ...]


獎勵:使用一點 JavaScript 語法糖(特別是箭頭函數),我們可以使函數代碼更簡潔:


var response = JSON.parse(responseBody);


var names = reponse.entries.map(entry => entry.accessible_by.name);


console.log(names);


查看完整回答
反對 回復 2022-12-22
  • 1 回答
  • 0 關注
  • 316 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號