【发布时间】:2013-12-05 14:32:31
【问题描述】:
为什么var uri = new Uri("ftp://1111:2222:3333::43/testing/1kb.zip");
抛出这个异常?
System.UriFormatException:无效的 URI:指定的端口无效。在 System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
【问题讨论】:
为什么var uri = new Uri("ftp://1111:2222:3333::43/testing/1kb.zip");
抛出这个异常?
System.UriFormatException:无效的 URI:指定的端口无效。在 System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
【问题讨论】:
来自RFC 2732:
要在 URL 中使用文字 IPv6 地址,文字地址应该是 用“[”和“]”字符括起来。
例如,这很好用:
var uri = new Uri("ftp://[1111:2222:3333::43]/testing/1kb.zip");
如果要指定端口,需要在方括号外:
var uri = new Uri("ftp://[1111:2222:3333::43]:100/testing/1kb.zip");
【讨论】: