cJSON array

来源:互联网 发布:获取网站源码工具 编辑:程序博客网 时间:2024/06/05 05:19
static result_t __config_parse_dns(char *config_buf){    int i, count;    cJSON *root = cJSON_Parse(config_buf);    if (NULL == root) {        goto L_ERROR;    }    cJSON *dns_domain = cJSON_GetObjectItem(root, "dns_cache_domain");    if (NULL == dns_domain) {        goto L_ERROR;    }    count = cJSON_GetArraySize(dns_domain);    for (i = 0; i < count; i++) {        cJSON *one = cJSON_GetArrayItem(dns_domain, i);        if (NULL == one) {            continue;        }        cJSON *dns = cJSON_GetObjectItem(one, "domain");        if (NULL == dns) {            continue;        }        cJSON *ip = cJSON_GetObjectItem(one, "ip");        if (NULL == dns) {            continue;        }        __sps_dns_ip_pair_insert(dns->valuestring, ip->valuestring);        LOGD(C_DNS_TAG, "parse %u domain: %s->%s", i + 1, dns->valuestring, ip->valuestring);    }    LOGD(C_DNS_TAG, "cjson to dns domain %s success", dns_domain->valuestring);    cJSON_Delete(root);    return E_OK;L_ERROR:    if (NULL != root) {        cJSON_Delete(root);    }    return E_FAILED;}
{    "uid_server_ip": "192.168.3.199",    "dns_cache_domain": [        {            "dns": "pullsdk.test.live.00cdn.com",            "ip": "42.81.26.37"        },        {            "dns": "pl8.live.panda.tv",            "ip": "42.81.26.37"        },        {            "dns": "pullsdk.cloutropy.com",            "ip": "192.168.3.182"        },        {            "dns": "panda.live.cloutropy.com",            "ip": "127.0.0.1"        },        {            "dns": "pullsdk.uid.com",            "ip": "192.168.3.179"        },        {            "dns": "origin.xmtp.com",            "ip": "42.81.26.37"        },        {            "dns": "pullsdk.test.com",            "ip": "192.168.4.244"        }    ]}