我正在尝试对域名(在电子邮件地址中)和主机名进行验证。在其他几个项目中,我发现为此目的,人们使用相同的功能。问题是,它们之间在语法上是否存在任何可能的差异,我应该为每个语句使用单独的验证例程,还是只保留一个?
到目前为止,我发现的例子看起来像(伪代码):
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"
它用于主机名和域名
答案 0 :(得分:3)
一个可能的区别是因为背景。在特定期望主机名的上下文中,IP地址通常也是可接受的。如果您使用主机名连接到它,则尤其如此。
但是如果想要一个域名,就没有“连接”到域名这样的东西,所以IP地址就不行了。
答案 1 :(得分:0)
域名:
域名是唯一的名称,用于标识Internet上的实体,无论是单个个体还是公司。域名总是有两个或多个由点分隔的部分
主机名:
主机名可能会令人困惑,因为它们具有双重含义。如果地址超过2个部分,则Internet地址的主机名是完整互联网地址的最左边部分。 如果地址只有2部分,则主机名等同于域名。
选中此article