我需要创建一个自托管的 WCF 服务。我需要通过 Internet 在客户端和服务器之间建立安全的双工连接。
看了一些WCF的文档,发现netTcpBinding适合内网应用,因为SSL只有2点。如果是互联网应用程序,连接不能是点 2 点,对吗?那么使用 netTcpBinding 进行传输安全的 SSL 不适合吗?
那么我应该使用什么组合来创建安全的双工互联网应用程序?非常感谢您。
我试过http://www.codeproject.com/KB/WCF/WCFWPFChat.aspx 本教程使用 netTcpBinding 和端点 localhost
我将端点 localhost 更改为基于名称的 url,将路由器中的端口转发到我的开发 PC,在 Windows 防火墙上打开相同的端口。
客户端程序可以和不同机器上的每个cients程序聊天,但是一分钟后回调连接会丢失。
我还尝试将绑定更改为wsDualHttpBinding,客户端程序可以与同一台机器上的每个客户端聊天,并将回调连接保持在reliableSession inactivityTimeout 设置中。但是另一台机器上的另一个客户端程序无法加入服务器,如果我关闭该机器上的 Windows 防火墙,客户端程序可以连接。
似乎tcp绑定可以让客户端程序连接到带有Windows防火墙的服务器。但回调连接丢失。
并且 wsDualHttpBinding 可以保持回调连接。但如果 Windows 防火墙打开,则无法连接到服务器。
有没有办法像 wsDualHttpBinding 一样保持 netTcpBinding 回调连接?