我需要将主机从Request对象中取出。我应该使用哪个属性,为什么?主机与DnsSafeHost
从MSDN:
Uri.DnsSafeHost属性
包含URI的转义 主机部分即以进行DNS解析合适 的字符串;或者原始 未转义的主机字符串,如果它是 已经适合解析。
VS
Uri.Host物业
包含主机名的字符串。 这通常是DNS主机名或 服务器的IP地址。
我的测试已经与ASP.NET开发服务器。这两个总是返回localhost
。即使我放入127.0.0.1,都会返回localhost
。
阅读后,DnsSafeHost
属性将处理IPv6地址以及Unicode到ASCII转换(如果需要)。它也可以解释IRI和IDN。即使我目前不关心这些事情,我应该只使用DnsSafeHost
属性来保证安全吗?
这很有道理。我没有考虑Host如何使用显示名称,并且DnsSafeHost以编程方式使用。感谢您提供清晰简洁的答案! – 2009-08-04 01:28:07