lookupRecord static method

Future<List<RRecord>?> lookupRecord(
  1. String name,
  2. RRecordType type, {
  3. bool dnssec = false,
  4. DnsApiProvider provider = DnsApiProvider.GOOGLE,
})

Lookup for records of the given type and name. It also supports dnssec

Implementation

static Future<List<RRecord>?> lookupRecord(String name, RRecordType type,
    {bool dnssec = false,
    DnsApiProvider provider = DnsApiProvider.GOOGLE}) async {
  var queryParameters = <String, dynamic>{};
  queryParameters.putIfAbsent('name', () => name);
  queryParameters.putIfAbsent('type', () => _getTypeFromType(type));
  queryParameters.putIfAbsent('dnssec', () => dnssec.toString());

  assert(_dnsApiProviderUrl.length == DnsApiProvider.values.length);
  var _baseUrl = _dnsApiProviderUrl[provider];

  var headers = {'Accept': 'application/dns-json'};

  var body = await HttpUtils.getForJson(_baseUrl!,
      queryParameters: queryParameters, headers: headers);
  var response = ResolveResponse.fromJson(body);
  return response.answer;
}