定義
JSON 變數提取器節點可以從 JSON 格式的輸入資料中提取指定的欄位(值)。這使得解析複雜的 JSON 字串並將其儲存為結構化的資訊成為可能,後續節點可以直接使用。

快速入門 / 使用方法
節點配置的詳細說明:在 GoInsight.AI 中右鍵點擊並選擇“添加節點”以將“JSON 變數提取器”節點添加到工作流程中。

1. 配置 JSON 變數提取器節點的值設定

“輸入值”有兩個選項:“變數”和“值”,具體說明如下:
選項 | 描述 |
---|---|
變數 | 從工作流程中的其他現有變數中取得 JSON 資料,適用於需要動態 JSON 資料檢索的情境。 |
值 | 輸入靜態 JSON 字串作為資料來源,適用於已知且固定的 JSON 資料情境。 |
如果“輸入值”設置為“變數”,您需要在“設置變數值”中選擇包含有效 JSON 格式資料的現有變數;如果選擇“值”,則需在文本框中輸入 JSON 格式的字串。範例:
{ "name": "Scout", "age": 18 }
2. 配置 JSON 變數提取器節點的提取模式和輸出變數參數
提取模式包括“提取欄位”和“整體輸出”,對應於不同的輸出變數格式,說明如下:
- 提取欄位:允許您從 JSON 資料中提取特定欄位或巢狀欄位值。輸出變數:點擊「+」指定一個或多個輸出變數。每個輸出變數必須包括“變數名稱”、“目標欄位”和“欄位資料類型”。
- 整體輸出:不提取任何欄位,將整個 JSON 資料作為單一輸出。輸出變數:點擊「+」添加輸出變數,必須包括“變數名稱”和“欄位資料類型”。
- 欄位資料類型選項:輸出欄位資料類型涵蓋了 JSON 資料中常見的資料格式,允許使用者根據需要提取和處理不同類型的資料。詳細描述如下:
類型 | 說明 |
---|---|
字串 | 用於儲存文字資訊,例如姓名、地址等。 |
數字 | 用於儲存數值資訊,可以是整數或浮點數,例如年齡、價格等。 |
布林值 | 布林值類型,只有兩個值:true 和 false,通常用於邏輯判斷。 |
陣列[布林] | 布林類型的陣列,用於儲存多個布林值,例如任務完成狀態的集合。 |
陣列[數字] | 數值類型的陣列,用於儲存多個數字,例如產品價格、數量等。 |
陣列[物件] | 物件類型的陣列,用於儲存複雜的資料結構,例如使用者資訊列表。 |
陣列[字串] | 字串類型的陣列,可以包含多個字串值,例如多個產品名稱、城市名稱等。 |
物件 | 用於以鍵值對格式儲存資料,例如詳細使用者資訊、訂單詳細資訊等。 |
典型使用案例
假設「輸入值」設置為靜態「值」或現有「變數」,輸入以下 JSON:
{ "name": "Scout", "age": 18 }
如果您想從 JSON 中提取欄位名稱和年齡並將它們儲存在不同的變數中:
1.提取模式:選擇“提取欄位”
第一個輸出變數設定
- 變數名稱:userName
- 目標欄位:name
- 欄位資料類型:字串
第二個輸出變數設定
- 變數名稱:userAge
- 目標欄位:age
- 欄位資料類型:數字
您可以獲得以下兩個輸出變數:
{ "Outputs": [ { "Name": "userName", "Type": "string", "Value": "Scout" }, { "Name": "userAge", "Type": "number", "Value": 18 } ] }
如果您希望將整個 JSON 物件視為單一字串值,例如在向內部和外部系統發送 JSON 資料時。
2.提取模式:選擇“整體輸出”
輸出變數
- 變數名稱:userInfo
- 欄位資料類型:物件
您可以獲得以下輸出變數:
{ "Outputs": [ { "Name": "userInfo", "Type": "object", "Value": { "age": 18, "name": "Scout" } } ] }
3. 輸入 JSON 為多層巢狀結構。
例如,以下 JSON 是多層巢狀結構:
{ "user": { "name": "Scout", "info": { "age": 18, "hobbies": ["read", "run"] } } }
如果您想提取「age」欄位,目標欄位為:$.user.info.age
- 在此 JSON 變數提取器節點的使用情境中,$.user.info.age是一個通用路徑表達式(JSONPath),用於指定在多層巢狀 JSON 結構中要提取的欄位位置。解釋如下:
符號/內容 | 解釋 |
---|---|
$ 符號 | $ 代表 JSON 資料的根節點,是路徑表達式的起點。無論 JSON 結構多麼複雜,路徑表達式總是以 $ 開始。 |
點號 (.) 分隔欄位 | 點號用於分隔 JSON 物件中的不同層級。每個點號後面跟著當前層級的欄位名稱。 |
JSON 變數提取器節點支援標準 JSON Path 語法。如果您需要使用更複雜的提取語法,可以參考此文件。需要注意的是,此節點僅支援使用雙引號包裹的字串值 "..." ,不支援單引號 '...'。 例如,在條件過濾情境 [?(@.field == "value")]中,值必須用雙引號括起,才能成功提取。
實用情境案例

篩選 YouTube 影片工作流程的步驟:
- 1. 在開始節點輸入關鍵字。
- 2. 在 HTTP 節點中輸入 API 資訊,使用關鍵字搜尋對應的 YouTube 影片。
- 3. 由於 HTTP 回應可能包含大量影片資訊,使用 JSON 變數提取器節點提取所需的標題、發布時間等資訊,篩選掉其他不必要的資訊。
這樣,我們可以直接獲得所需的 YouTube 影片的標題、發布時間和其他資訊。
常見問題
檢查是否存在以下情況:
- 一次加載大型 JSON 文件(例如,超過 100MB 的日誌文件)。
- 提取了太多冗餘字段。
- 重複解析相同的結構化數據。
發佈評論