Dan*_*aar 3 c# sockets asp.net-web-api
我编写了一个客户端/服务器应用程序,我正在我的本地机器上测试它。
服务器读取客户端的 IP 地址作为::1IPv6 环回地址。
但是,稍后我需要通过提供 Uri 的 BaseAddress 重新建立与该客户端的 HttpClient 连接:
var originalAddress = "::1";
var client = new HttpClient() { BaseAddress = new Uri(originalAddress) };
Run Code Online (Sandbox Code Playgroud)
这导致异常 Invalid URI: The format of the URI could not be determined.
我怎样才能让 Uri 接受这个地址?
正如其他帖子中提到的,解决方案是根据RFC 2732在 IPv6 地址周围用括号括起来:
var uri = new Uri("http://[::1]:8080");
Run Code Online (Sandbox Code Playgroud)