Como detectar se um Domínio Existe?

Bom ainda na linha de melhoria da qualidade de dados mais um função para auxiliar. Dessa vez uma combinação da dobradinha CF + JAVA, onde temos a possibilidade de testar a existencia de um domínio sem auxilio do Whois ou registro.br.

Lembrando, essa funcionalidade é para testa se existe e não obter detalhes do mesmo, nesse caso não se tem muito para onde fugir e tem que se ver as informações do WhoIs ou registro.br.

    <cffunction name="isValidDomain" access="private" returntype="boolean">
        <cfset var LOCAL = StructNew() />
        <cfset LOCAL.InetAddress = CreateObject("java", "java.net.InetAddress") />
        <cfset LOCAL.isValidHost = false />
        <cftry>
            <cfset LOCAL.addr = LOCAL.InetAddress.getByName(THIS.domain) />
            <cfset LOCAL.isValidHost = true />
            <cfcatch type="java.net.UnknownHostException">
                <cfhttp url="http://www.#THIS.domain#/" method="head" />
                <cfif CFHTTP.Statuscode EQ "200 OK">
                    <cfset LOCAL.isValidHost = true />
                </cfif>
            </cfcatch>
        </cftry>
        <cfreturn LOCAL.isValidHost />
    </cffunction>
[/crayon]
Por Rafael Bandeira

 

Leave a comment