2016-03-14 3 views
1

Disons que j'ai un formulaire de contact où un utilisateur peut entrer son adresse e-mail avec ses autres coordonnées. Je dois vérifier la validité du domaine générique de premier niveau ou du domaine de premier niveau de l'adresse électronique. Un exemple:Comment valider le domaine de premier niveau d'une adresse e-mail?

[email protected]

Je dois vérifier si .paris est un domaine de niveau supérieur valide.

S'il vous plaît se référer à this link pour la liste des domaines disponibles, ce qui donne un nombre autour de 1200. Le stockage des noms de domaine dans une table locale et la recherche est pas une option car de nouveaux domaines sont introduits tous les jours. S'il vous plaît laissez-moi savoir s'il y a un service web ou une API gratuite disponible pour cela, ou il existe un moyen de valider l'adresse e-mail.

Répondre

1

Le moyen le plus simple pour savoir si un domaine existe est de vérifier s'il dispose d'un serveur de noms. Considérant qu'un TLD coûte environ 100 000 $, il est très probable que tout ce qui est acheté est en cours d'utilisation. De plus, s'il n'a pas de serveur de noms, vous ne pouvez rien lui envoyer de toute façon.

utiliser dig vous pouvez exécuter

dig NS +short paris 

qui donnera

h.ext.nic.fr.
d.nic.fr.
g.ext.nic.fr.
f.ext.nic.fr.

alors que

dig NS +short adsfadfs 

ne renvoie rien.

+0

Merci beaucoup :) – Satwiki

0

Il n'y a rien de mal à stocker une liste de TLD localement lorsque vous avez besoin d'une réponse rapide pour la validation côté client ou que vous ne voulez pas consommer de ressources réseau pour une recherche DNS inverse.

Les adresses électroniques des nouveaux TLD sont extrêmement rares pour la plupart des cas d'utilisation. Je mets à jour ma liste environ une fois par an et trouve que c'est assez bon.