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
(Perl) Cloudfare DNS over HTTPSCloudflare offers a DNS over HTTPS resolver at: https://cloudflare-dns.com/dns-query This example demonstrates how to do a DNS lookup for a domain using Cloudfare's HTTPS resolver.
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $http = chilkat::CkHttp->new(); # Send the following CURL request: curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=chilkat.io&type=A' $http->put_Accept("application/dns-json"); $url = "https://cloudflare-dns.com/dns-query?name=chilkat.io&type=A"; $jsonResp = $http->quickGetStr($url); if ($http->get_LastMethodSuccess() != 1) { print $http->lastErrorText() . "\r\n"; exit; } print "Response Status Code: " . $http->get_LastStatus() . "\r\n"; $json = chilkat::CkJsonObject->new(); $json->Load($jsonResp); $json->put_EmitCompact(0); print $json->emit() . "\r\n"; if ($http->get_LastStatus() != 200) { print "Failed." . "\r\n"; exit; } # Sample output... # (See the parsing code below..) # # { # "Status": 0, # "TC": false, # "RD": true, # "RA": true, # "AD": false, # "CD": false, # "Question": [ # { # "name": "chilkat.io.", # "type": 1 # } # ], # "Answer": [ # { # "name": "chilkat.io.", # "type": 1, # "TTL": 900, # "data": "52.25.83.238" # } # ] # } # Use this online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON $Status = $json->IntOf("Status"); $TC = $json->BoolOf("TC"); $RD = $json->BoolOf("RD"); $RA = $json->BoolOf("RA"); $AD = $json->BoolOf("AD"); $CD = $json->BoolOf("CD"); $i = 0; $count_i = $json->SizeOfArray("Question"); while ($i < $count_i) { $json->put_I($i); $name = $json->stringOf("Question[i].name"); $type = $json->IntOf("Question[i].type"); $i = $i + 1; } $i = 0; $count_i = $json->SizeOfArray("Answer"); # The domain name resolves to 1 or more IP addresses.. while ($i < $count_i) { $json->put_I($i); $name = $json->stringOf("Answer[i].name"); $type = $json->IntOf("Answer[i].type"); $TTL = $json->IntOf("Answer[i].TTL"); $ipAddr = $json->stringOf("Answer[i].data"); print "IP Address: " . $ipAddr . "\r\n"; $i = $i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.