我在客户端获得异常,同时从外部供应商wcf服务进行处理,例如"The HTTP request is unauthorized with client authentication scheme 'Basic'. The authentication header received from the server was 'Basic realm="CASM"'".
我正在从Web服务请求大型数据某些时间点我得到异常。输入东西是我从wcf服务获取一些数据并在之后获得异常。所以我假设我是否需要微调请求?所以我不应该一次询问大数据,或者这是一个不同的问题。我确实喜欢显示“Error when adding web service reference in VS2012”的帖子,但没有运气。
任何人都可以告诉我这个例外背后可能的原因是什么。下面是我的webconfig部分,我在我的代码中使用用户名和密码
<binding name="Test" closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="6553600" maxBufferPoolSize="524288" maxReceivedMessageSize="6553600"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Basic" proxyCredentialType="Basic"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
<endpoint address="http://testurl/as" binding="basicHttpBinding"
bindingConfiguration="Test" contract="Testservice.Test" name="Test">
</endpoint>
更新
另外一件事是realm="CASM"
在异常中是什么,我无法在客户端配置中设置,intellisense没有给出
答案 0 :(得分:0)
尝试更改此
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Basic" proxyCredentialType="Basic"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
这一行
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Anonymous"/>
<message clientCredentialType="UserName" algorithmSuite="Default"/>
</security>