B4X
B4X
DNS Query SOA Records
See more DNS Examples
Shows how to perform a DNS query to retrieve SOA records.Note: This example requires Chilkat v9.5.0.96 or later.
Chilkat B4X Downloads
Dim success As Boolean = False
Dim dns As ChilkatDns
dns.Initialize("dns")
Dim json As ChilkatJsonObject
json.Initialize
json.EmitCompact = False
success = dns.Query("SOA", "x.com", json)
If success = False Then
Log(dns.LastErrorText)
Return
End If
Log(json.Emit)
' Sample response.
' Parsing code below..
' {
' "answer": {
' "soa": [
' {
' "name": "x.com",
' "ttl": 1800,
' "mname": "alexia.ns.cloudflare.com",
' "rname": "dns.cloudflare.com",
' "serial": -1971124188,
' "refresh": 10000,
' "retry": 2400,
' "expire": 604800,
' "minttl": 1800
' }
' ]
' }
' }
' Use this online tool to generate parsing code from sample JSON:
' Generate Parsing Code from JSON
Dim name As String
Dim ttl As Int
Dim mname As String
Dim rname As String
Dim serial As Int
Dim refresh As Int
Dim retry As Int
Dim expire As Int
Dim minttl As Int
Dim i As Int = 0
Dim count_i As Int = json.SizeOfArray("answer.soa")
Do While i < count_i
json.I = i
name = json.StringOf("answer.soa[i].name")
ttl = json.IntOf("answer.soa[i].ttl")
mname = json.StringOf("answer.soa[i].mname")
rname = json.StringOf("answer.soa[i].rname")
serial = json.IntOf("answer.soa[i].serial")
refresh = json.IntOf("answer.soa[i].refresh")
retry = json.IntOf("answer.soa[i].retry")
expire = json.IntOf("answer.soa[i].expire")
minttl = json.IntOf("answer.soa[i].minttl")
i = i + 1
Loop