2

我正在尝试对域名(在电子邮件地址中)和主机名进行验证。在其他几个项目中,我发现人们为此使用相同的功能。问题是,它们在语法上是否存在任何可能的差异,我应该为它们中的每一个使用单独的验证例程还是只保留一个可以?

到目前为止我发现的例子看起来像这样(在伪代码中):

str.split('.')
foreach part in str
    if part.length > max
        return "name is invalid"
    if part contains invalid characters
        return "name contains invalid characters"
return "name valid"

它同时用于主机名和域名

4

2 回答 2

3

一种可能的差异是由于上下文。在特别需要主机名的上下文中,IP 地址通常也是可以接受的。如果您将使用主机名连接到它,则尤其如此。

但是,如果需要一个域名,就没有“连接”到一个域名这样的事情,所以 IP 地址就不行了。

于 2011-05-16T10:58:36.073 回答
0

域名 :

域名是在 Internet 上标识实体(无论是个人还是公司)的唯一名称。域名总是有 2 个或更多由点分隔的部分

主机名:

主机名可能会令人困惑,因为它们具有双重含义。如果地址有超过 2 个部分,则 Internet 地址的主机名是完整 Internet 地址的所有最左侧部分。如果地址只有 2 部分,则 hostname 相当于 domain name

检查这篇文章

于 2011-05-16T10:32:11.137 回答