我构建了一个为Web应用程序公开自身的WCF服务,它接受一个对象并在客户端计算机上打印数据。在我的开发机器上工作正常,并且该服务在我安装它的任何机器上启动并运行。我可以在客户机网络浏览器中输入IP地址,看它是否正在运行。问题是,当我将对象发送到客户端计算机时,它返回一个错误,听起来可能是因为客户端Windows防火墙。我将从哪里开始处理这个问题?
http://192.168.1.168:2202/PrintLabel没有可以接受该消息的端点。这通常是由错误的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在)。
InnerException:无法连接到远程服务器
答案 0 :(得分:1)
通过与社区中的人进行进一步的研究和讨论,我开始理解正如this article.底部所提到的那样。
“WCF的自托管HTTP寻址未集成到Windows防火墙中。必须在防火墙配置中添加例外,以允许使用特定URL的入站连接。
但this SO question引导我进入一个页面,其中介绍了如何通过代码控制Windows防火墙以使我的WCF自托管服务能够接受对象。
这个链接如下。
http://www.shafqatahmed.com/2008/01/controlling-win.html
该链接朝着我需要的方向发展,但根据用户评论,它似乎有一些错误。一位同事发现this link,我相信这种技术将是这种情况的最佳解决方案。