Aar*_*els 40 c# vb.net asp.net
我需要让主机脱离Request对象.我应该使用哪个属性?为什么?
来自MSDN:
Uri.DnsSafeHost财产
包含适用于DNS解析的URI的未转义主机部分的字符串; 或原始未转义的主机字符串,如果它已经适合解决.
VS
Uri.Host财产
包含主机名的String.这通常是服务器的DNS主机名或IP地址.
我的测试是使用ASP.NET Development Server.这两者总是回归localhost.即使我输入127.0.0.1,两者都返回localhost.
阅读时,该DnsSafeHost属性将处理IPv6地址,以及Unicode转换为ASCII(如果需要).它还可以解释IRI和IDN.即使我目前不关心这些事情,我应该只使用该DnsSafeHost属性是否安全?
Ore*_*ner 46
应用DnsSafeHost的URL,如果你打算将导致主机名称发送到DNS服务器上你自己的.DNS最初是一种仅限ASCII的协议(以及ASCII的子集).当前URL允许URL的主机部分中的字符序列无法直接发送到DNS服务器.例如:
括号内的IPv6地址.DnsSafeHost放下括号.
非ASCII,非英文域名.DnsSafeHost(可选)使用RFC 3987 IRI来标准化字符,并将非ASCII字符转换为IDN,Punycode编码.
谁知道将来允许哪些URL?该应用程序可能比我们对URL中的正常情况的假设更长久.DnsSafeHost在那里增加了一定程度的弹性.
如果需要向用户显示主机名,请改用Host属性.
| 归档时间: |
|
| 查看次数: |
9339 次 |
| 最近记录: |