Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) DNS Query CAA RecordsSee more DNS ExamplesShows how to perform a DNS query to retrieve CAA records. Note: This example requires Chilkat v9.5.0.96 or later.
#include <C_CkDnsW.h> #include <C_CkJsonObjectW.h> void ChilkatSample(void) { HCkDnsW dns; HCkJsonObjectW json; BOOL success; const wchar_t *name; int ttl; int flags; const wchar_t *tag; const wchar_t *value; int i; int count_i; dns = CkDnsW_Create(); json = CkJsonObjectW_Create(); CkJsonObjectW_putEmitCompact(json,FALSE); success = CkDnsW_Query(dns,L"CAA",L"zoom.us",json); if (success == FALSE) { wprintf(L"%s\n",CkDnsW_lastErrorText(dns)); CkDnsW_Dispose(dns); CkJsonObjectW_Dispose(json); return; } wprintf(L"%s\n",CkJsonObjectW_emit(json)); // Sample response. // Parsing code below.. // { // "answer": { // "caa": [ // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "iodef", // "value": "mailto:security@zoom.us" // }, // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "issue", // "value": "amazon.com" // }, // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "issue", // "value": "digicert.com" // }, // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "issue", // "value": "godaddy.com" // }, // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "issue", // "value": "letsencrypt.org" // }, // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "issue", // "value": "pki.goog" // }, // { // "name": "zoom.us", // "ttl": 300, // "flags": 0, // "tag": "issue", // "value": "sectigo.com" // } // ] // } // } // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON i = 0; count_i = CkJsonObjectW_SizeOfArray(json,L"answer.caa"); while (i < count_i) { CkJsonObjectW_putI(json,i); name = CkJsonObjectW_stringOf(json,L"answer.caa[i].name"); ttl = CkJsonObjectW_IntOf(json,L"answer.caa[i].ttl"); flags = CkJsonObjectW_IntOf(json,L"answer.caa[i].flags"); tag = CkJsonObjectW_stringOf(json,L"answer.caa[i].tag"); value = CkJsonObjectW_stringOf(json,L"answer.caa[i].value"); i = i + 1; } CkDnsW_Dispose(dns); CkJsonObjectW_Dispose(json); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.