我正在编写一个简单的反向代理,需要处理http GET和POST以及WebSocket连接。同时客户端的数量会很少,所以我希望使用HttpListener。我很难看到如何使用它来代理WebSocket连接。
我认为必须通过HttpListenerResponse发送回复。对于GET和POST,这很容易。对于WebSockets,我需要发送握手数据,然后保持连接打开,以便从正在代理的服务器发送更多消息。我可以看到使用HttpListenerResponse发送数据的唯一方法是调用Close(),可能会阻止进一步使用底层套接字。
尝试使用HttpListenerRequest从客户端接收以后的websocket消息时,可能存在类似的问题。
我在这里遗漏了什么,或者没有办法将HttpListener与websockets一起使用?
答案 0 :(得分:1)
现在似乎无法使用HttpListener。你必须等待.NET 4.5。