0
我正在解析包含多個帳戶的API信息的JSON。這些數據用在api包裝器中。R - 過濾嵌套列表並找回更高級別的密鑰
[
{
"geo":"au",
"api": [
{"type":"base_url", "value":"https://api.com"},
{"type":"key", "value":"f18"},
{"type":"secret", "value":"569"}
],
"accounts": [
{"name":"client_AQE","id":"8765","inventory":"all","currency":"AUD"}
]
},{
"geo":"eu",
"api": [
{"type":"base_url", "value":"https://api.com"},
{"type":"key", "value":"p8c6043"},
{"type":"secret", "value":"983df5"}
],
"accounts": [
{"name":"client_UYT","id":"098765","inventory":"all","currency":"GBP"},
{"name":"client_WER","id":"09098","inventory":"all","currency":"GBP"},
{"name":"client_OIP","id":"234543","inventory":"all","currency":"EUR"}
]
}
]
當用戶給我一個「帳戶名」,但不指定「地理」,我想:
- 檢查客戶端只出現一次(這是可以做到與下面的功能,採用
rlist
)
only_one_client <- function(account_name) { return(fromJSON(file=API_INFO_PATH) %>% list.map(accounts) %>% unlist(recursive=F) %>% list.mapv(name) %>% table() %>% extract(account_name) == 1)) }
- 如果客戶只出現了一次,發現了「地理」,它出現在
這是我無法找到一個方法來做到