为什么无法在远程网络计算机上访问 WCF Restful 服务?



我在本地网络上获得RESTful web服务时遇到了问题。直到最近,他们都工作得很好,我不知道是什么改变了,我希望有人能给我一个清单来检查,以确保我所有的设置都是好的。我创建了一个非常简单的测试应用程序,看看它是我的代码中的东西还是我的网络设置本身。我在Visual Studio 2010中创建了一个c# WinForms解决方案,并将其添加到窗体的OnLoad处理程序中:

ServiceHost host = new ServiceHost(typeof(BasicService));
string baseUri = "http://" Environment.MachineName + ":876/testing";
ServiceEndpoint point = host.AddServiceEndpoint(typeof(IBasicService), new      WebHttpBinding(), baseUri);
point.Behaviors.Add(new WebHttpBehavior());
host.Open();

服务只是返回一个字符串。我可以在本地机器上打开浏览器并看到返回的字符串。我以前可以在本地网络上的其他计算机/设备上看到这个,但是现在当我从远程机器上尝试时,我得到一个502错误代码。我是否需要切换某种证书或网络设置?

这行不通,因为"localhost"总是指当前机器。当远程系统试图访问它时,它实际上是在访问自己!

您需要使用与运行服务的机器的外部可见IP地址相关联的DNS名称

最新更新