2017-02-16 97 views
2

如果我有這樣的一個迴應:加特林 - 從JSON陣列響應提取數據

{ 
    "A": 2, 
    "B": [ 
    { 
     "CCC": "abcde", 
     "DDD": { 
     "EEE": 11, 
     "FFF": 22 
     } 
    }, 
    { 
     "CCC": "fghij", 
     "DDD": { 
     "EEE": 111, 
     "FFF": 222 
    } 
    } 
    ] 
} 

如何才能得到所有值CCC列表或以其他方式?

如果我使用:

.check(jsonPath("$..CCC").saveAs("VARIABLE")) 

我只得到了第一個CCC( 「ABCDE」)。通過CCC [*]執行此操作會引發錯誤。

回答

3

我想,你應該在檢查語句中添加findAll。

例如:

.check(jsonPath("$..[*].CCC").findAll.saveAs("VARIABLE")) 

並請定義你的錯誤。

乾杯, Peekay

+0

嗨,Peekay。我猜,這已經奏效了。我得到這個結果(5個值): 一些(Vector(8a7d477d-59a0-4920-ad10-8c1a7fd65c3b,af9efa88-a358-40b1-b206-c90555b6ff52,ba22986e-1b92-4dbf-b95f-1ed8b428d9e4,47b96be4-4e5c- 4afa-baa9-a4a118606c84,63abc057-8f0e-48ca-881d-c2308b1e4811)) 這5個值是排序的ID。 我相信這是一個序列?你如何迭代和處理序列...? – Alichino

+1

嗨Alichino, 首先,findAll收集所有值。無論有多少價值。 第二,您可以按照「$ {abc(0)},$ {abc(1)},$ {abc(2)},...」順序傳遞值。 我想,你已經找到了你的答案。 乾杯, Peekay – Praveen