C# 获得;413“请求实体太大”;与WCF服务通话时
我有一个WCF服务,C# 获得;413“请求实体太大”;与WCF服务通话时,c#,wcf,C#,Wcf,我有一个WCF服务,Server,它接受来自控制台应用程序客户端的请求。当发送数据(相对较大)时,我得到以下异常: System.ServiceModel.ProtocolException: The remote server returned an unexpected response: (413) Request Entity Too Large. ---> System.Net.WebException: The remote server returned an error:
Server
,它接受来自控制台应用程序客户端的请求。当发送数据(相对较大)时,我得到以下异常:
System.ServiceModel.ProtocolException: The remote server returned an unexpected response: (413) Request Entity Too Large. ---> System.Net.WebException: The remote server returned an error: (413) Request Entity Too Large.
我以为我在配置文件中正确设置了限制,但显然我错了
以下是Server
的app.config
的相关部分:
下面是客户端的app.config
:
最后,这就是客户端
调用服务器
方法的方式:
使用(var cf=new WebChannelFactory(“serverEndpoint”,serverAddress))
{
var channel=cf.CreateChannel();
channel.SomeMethod(一些,参数);
}
我做错了什么
感谢您的帮助。问题在于客户机
驻留在单元测试项目中,并且该问题是在运行单元测试时出现的。运行单元测试时,只考虑单元测试项目的配置文件,因此需要将服务器的
配置部分复制到其中
这样,就只使用了一个配置文件:服务器和客户端都要读取配置文件
在那之后,一切正常。问题是客户机
驻留在单元测试项目中,而问题是在运行单元测试时出现的。运行单元测试时,只考虑单元测试项目的配置文件,因此需要将服务器的
配置部分复制到其中
这样,就只使用了一个配置文件:服务器和客户端都要读取配置文件
之后,一切正常。您需要将maxReceivedMessageSize设置为正确的大小。正如您所提到的,您的配置中有这个设置。你能用Fiddler检查一下你期望的响应大小(kb)吗?@Agalo,我现在不能检查,但大小肯定会达到10兆字节,也就是说,相对较大,但没有什么真正极端的。仅仅在配置文件中设置maxReceivedMessageSize
是不够的吗?谢谢2147483647是字节数,等于~2 GB。对于任何更大的消息,请查看或。@Tim,我的消息的大小远未接近2GB。配置文件中设置的限制应该足够了,但似乎没有应用这些限制。您需要将maxReceivedMessageSize设置为正确的大小。正如您所提到的,您的配置中有这个设置。你能用Fiddler检查一下你期望的响应大小(kb)吗?@Agalo,我现在不能检查,但大小肯定会达到10兆字节,也就是说,相对较大,但没有什么真正极端的。仅仅在配置文件中设置maxReceivedMessageSize
是不够的吗?谢谢2147483647是字节数,等于~2 GB。对于任何更大的消息,请查看或。@Tim,我的消息的大小远未接近2GB。配置文件中设置的限制应该足够了,但似乎没有应用这些限制。