0

我有 Wcf 休息服务。我将它托管在控制台应用程序中。当我尝试从本地计算机访问该服务时,它可以工作,但是当我从远程计算机尝试时,找不到该服务。这是代码:

服务定义:

[ServiceContract]
public interface IInstagramCallbackService
{
    [OperationContract]
    [WebInvoke(Method = "GET", UriTemplate = "url/?hub.mode={mode}&hub.challenge={challenge}&hub.verify_token={token}")]       
     string CheckServiceAvailability(string mode, string challenge, string token);
}

public class InstagramCallbackService : IInstagramCallbackService
{
    public string CheckServiceAvailability(string mode, string challenge, string token)
    {
        return challenge;
    }
}

主办:

ServiceHost host = new ServiceHost(typeof(InstagramCallbackService),new Uri[]{});

WebHttpBinding binding = new WebHttpBinding(WebHttpSecurityMode.None);

ServiceEndpoint endPoint = new ServiceEndpoint(
    ContractDescription.GetContract(
        typeof(InstagramCallbackService)), binding, new EndpointAddress(
            "http://127.0.0.1:6064/InstagramCallbackService"));

WebHttpBehavior webBehavior = new WebHttpBehavior();
endPoint.Behaviors.Add(webBehavior);
host.AddServiceEndpoint(endPoint);
host.Open();
Console.WriteLine("ready");
Console.ReadLine();
4

1 回答 1

0

127.0.0.1是本地地址。这就像说localhost或“这台电脑”。你不能127.0.0.1从另一台电脑上打,因为127.0.0.1从另一台电脑上就是台电脑。当然,您的机器有其他可以使用的地址吗?ipconfig从命令行尝试。

于 2013-10-03T13:54:07.290 回答