我有一个包含两个客户端服务的解决方案。他们可以相互沟通,发送消息,并引发事件。 当我用一台机器进行测试时,它们工作得很好,但是我将它们安装在不同的机器上,互联网已连接,并且它们互相找不到。由于我自己托管我的服务,这可能是原因吗?我使用DuallHttpBinding作为绑定配置。 我的情况是一个具有两个客户端实例和一个服务的聊天应用程序,其中每个服务器运行在不同的机器上,而不具有除因特网连接之外的任何网络连接。在不同的机器上测试WCF聊天应用程序
回答
DualHttpBinding要求两个客户端能够打开连接并向对方发送消息。最有可能的客户端之一是无法接受传入连接的防火墙,没有端口转发的NAT路由器,或者其他客户端根本找不到正确的地址。
通过HTTP进行的这种直接双向通信很难在您进入互联网后立即获得。要调试它,我建议看看Fiddler这是一个很好的HTTP调试工具。你必须观察连接,看看客户端是否可以连接,如果没有连接,为什么连接失败。那么你将不得不解决导致这个问题的连接问题。
我不确定它是否适用于您,但它会显着减少错误,将net.tcp用作绑定,并将服务器放置在所有客户端都可以连接到的位置(如net.tcp doesn' t要求服务器能够打开一个端口回到客户端,它可以使用现有的连接发送)。它只需要客户端能够连接到服务器,而不是服务器需要能够创建第二个连接返回到客户端,从而通过标准NAT配置工作。
谢谢。使用NetTcp绑定服务的客户端是否有可能不在物理网络中,只能使用互联网作为连接平台?因为我的客户是不同国家的客户 – 2011-02-23 16:31:12
是的,只要他们可以在互联网上看到对方。你需要一端有一个互联网客户端可以连接的开放端口,但另一个客户端可以在NAT路由器后面,它仍然可以工作。这与配置Web服务器基本相同。 :) – Tridus 2011-02-23 16:53:29
- 1. Node.js聊天应用主机测试
- 2. 如何测试聊天在Quickblox聊天应用程序适用于iOS
- 3. 聊天应用程序中的WCF主机问题
- 4. 如何在Ruby on Rails中测试聊天应用程序?
- 5. 程序-o为Android聊天机器人应用程序
- 6. 调试聊天应用程序
- 7. appengine上的聊天应用程序
- 8. java聊天应用程序不能在其他机器上工作
- 9. 不同设备上的Windows手机应用程序测试
- 10. 测试和使用没有模拟器的聊天机器人
- 11. 如何测试聊天web应用程序
- 12. 如何测试蓝牙聊天应用程序
- 13. Android聊天应用程序
- 14. JavaFX聊天应用程序
- 15. ASP.NET聊天应用程序
- 16. Facebook聊天机器人使用谷歌应用程序引擎
- 17. 聊天应用程序 - Socket.IO/Angular/MongoDB - 不显示聊天和聊天记录
- 18. P2p在Android的聊天应用程序
- 19. 在java中的聊天应用程序
- 20. 不同平台上的基于聊天的应用程序的端到端测试
- 21. Opa聊天应用程序不工作
- 22. XHR不适合聊天应用程序?
- 23. 不同的应用程序与opentok之间的视频聊天
- 24. 在聊天应用程序中发送多聊天通知
- 25. 使用谷歌应用程序引擎的聊天机器人不回复
- 26. 无法在Microsoft聊天机器人登记测试
- 27. 在应用程序中实现聊天?
- 28. 气球在聊天Android应用程序
- 29. 在web应用程序中聊天
- 30. iOs在应用程序聊天
网络是一个复杂的问题。可能有几个原因:未连接到服务器,端口被阻塞(客户端或服务器),设计不正确等; – 2011-02-23 16:12:34
你能描述一下你当前的绑定配置吗? – 2011-02-23 16:19:28
你能更具体吗?我的意思是我们需要指定某种配置,以便在设计时发生这种情况,或者WCF应该能够自动执行此操作? – 2011-02-23 16:22:22