简而言之,是否可以在已经实例化且完全打开的outbound System.Net.WebSockets.WebSocket
实例上确定以下任一项:
- 套接字的本端IP
- 套接字的本地端口(临时)
- 远程IP(如果连接到主机name,则尤其重要)
- 远程端口(是的,我知道了,我们应该已经知道了,但问题是什么是可能的)
简而言之,是否可以在已经实例化且完全打开的outbound System.Net.WebSockets.WebSocket
实例上确定以下任一项:
No there is not any simple way to do this.个
这样做的原因很简单,因为实际上可以在任何读/写流上创建WebSocket
,这可能根本不是网络流.因此,拥有这样一处房产并没有真正的意义.
也许它可以将内部流公开为属性,但这可能会 destruct 封装.你可以试着给这个打Github request分.
碰巧的是,ClientWebSocket
确实包含一个字段private WebSocketHandle? _innerWebSocket
,您可以使用反射从其中获取流.假设流是NetworkStream
,那么您可以从它的Socket
属性中获取信息.
这样的方法对于任何对未经文档记录的内部设计的库更改都是非常脆弱的.