HttpClient类的各种方法(GetAsync 等)采用 Uri 对象或字符串并尝试打开到指定位置的连接。但是,在我的情况下,远程主机很可能没有在监听(端口已关闭并将被主动拒绝;它在我们的 LAN 内)。
我宁愿不依靠捕获异常来处理这种情况,特别是因为这些方法会引发AggregateException,然后我必须对其进行筛选。
有没有更好的方法来检测这种情况,同时仍然获得 HttpClient 类的好处(远程主机是 WebApi 服务)?我是否应该使用 TcpClient 之类的东西预先检查端口是否正在侦听?当然,这涉及调用之间的竞争条件。我希望采用 HttpMessageHandler 的构造函数重载会有所帮助,但WebRequestHandler中的任何内容都不会跳出我...