2012-02-14 58 views
3

我对部署WCF Web服务相当陌生。我主持在IIS6一个WCF服务,我想这 Web服务是由客户端访问我的外域WCF服务可由我的域外客户访问

请帮我...
在此先感谢...

+0

你有没有启用IIS中的网站的匿名访问? 您是否使用任何其他绑定而不是basicHttpBinding? – Huusom 2012-02-14 08:05:45

回答

2

你可以做到这一点很容易。您需要选择正确的binding,如basicHttpBindingwsHttpBinding等。

将您的服务器映射到某个DNS或IP。在您的服务器上打开80端口,以便外部世界可以访问它。

希望这对你有用。

+0

谢谢Amar让我试试这个解决方案.. – augustine 2012-02-14 08:19:07

0

我想你可能指的是我在使用Silveright时遇到的“跨域”问题。如果是这样的话,那么“跨域”会给你提供有助于你的谷歌词汇。更多信息...

您需要在服务的根目录添加跨域服务。现在,这一切都是很模糊的,因为它是一个有点复杂,取决于你的应用程序,但你需要一个配置是这样的:

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> 

<cross-domain-policy> 
    <allow-http-request-headers-from domain="*" headers="*"/> 

</cross-domain-policy> 

如果有问题,上面提供了丰富的谷歌图片关键词如果没有其他的。

我有一个服务,承载几个WCF服务。究其根源它公开使用这种配置上面的跨域服务:

[ServiceContract] 
public interface ICrossDomainService 
{ 
    [OperationContract, WebGet(UriTemplate = "/clientaccesspolicy.xml")] 
    Stream GetClientAccessPolicy(); 

    [OperationContract, WebGet(UriTemplate = "/crossdomain.xml")] 
    Stream GetCrossDomainPolicy(); 
} 

我希望这有助于

相关问题