我有一个在Localhost中完美运行的WCF文件服务器和客户端,但是当我将服务器安装到另一台计算机时,客户端会在需要上传文件时引发异常。例外是:
服务器拒绝凭据。
我在客户端的配置文件中添加了新服务器的IP(172.18.20.25)。
这是我的客户端配置文件:
<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<client>
<endpoint name="FileRepositoryService"
address="net.tcp://172.18.20.25:5000" binding="netTcpBinding"
contract="FileServer.Services.IFileRepositoryService"
bindingConfiguration="customTcpBinding"/>
</client>
<bindings>
<netTcpBinding>
<binding name="customTcpBinding"
maxReceivedMessageSize="2147483648" transferMode="Streamed"/>
</netTcpBinding>
</bindings>
</system.serviceModel>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
这是我服务器的配置:
<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<appSettings>
<add key="RepositoryDirectory" value="storage"/>
</appSettings>
<system.serviceModel>
<services>
<service name="FileServer.Services.FileRepositoryService">
<endpoint name="" binding="netTcpBinding"
address="net.tcp://localhost:5000"
contract="FileServer.Services.IFileRepositoryService"
bindingConfiguration="customTcpBinding" />
</service>
</services>
<bindings>
<netTcpBinding>
<binding name="customTcpBinding" transferMode="Streamed"
maxReceivedMessageSize="2147483648" />
</netTcpBinding>
</bindings>
</system.serviceModel>
</configuration>
如前所述,当客户端和服务器在一台机器上运行时,它工作正常。我读到了向服务器添加一个新的WSDL端点,我不确定它,我不知道如何添加它。你的建议是什么?
答案 0 :(得分:0)
检查您的应用程序是否具有服务器上的读写权限。
答案 1 :(得分:0)
这一行
address="net.tcp://localhost:5000"
将其更改为
net.tcp://172.18.20.25:5000
试一试。
另一个建议是,尝试设置net.tcp身份验证配置