WCF (413) Request Entity Too Large

有网友碰到过这样的问题:wcf 远程服务器返回了意外响应: (413) Request Entity Too Large。 - wsx_net,问题详细内容为:挺不错的博文:wcf 远程服务器返回了意外响应: (413) Request Entity Too Large。 - wsx_net,我搜你通过互联网收集了相关的一些解决方案,希望对有过相同或者相似问题的网友提供帮助,具体如下:

我遇到这个问题的原因是:我使用asp.net 网站调用wcf服务后,通过方法提交数据产生的。我提交的数据是一个实体,包含很多字符串和图片格式的二进制数据超过4M 就报个错误。

后来同事帮忙解决了。他说是因为wcf服务的配置文件有问题, 一般情况下,我们新建wcf都使用默认wcf配置,所以都是 basicHttpBinding  ,而刚好,默认wcf传送的大小有限制的是4M,所有超出了就报错。解决办法是:

修改默认绑定协议:

<!--如果没有设置,将采用wcf默认机制,这里设置或改变默认绑定设置-->
<protocolMapping>
<remove scheme="http"/><!--移除原有默认绑定  (bascHttpBinding)-->
<add scheme="http" binding="wsHttpBinding" bindingConfiguration="BaseWsBinding"/><!--添加新的默认绑定协议 wsHttpBinding ->
</protocolMapping>

加上以上配置后,就可以了。 

我就是因为没有加上以上的配置,所有不管你配置什么协议,都采用默认的,不管你改maxReceivedMessageSize 多大都不行,因为服务端始终采用默认大小。

原文地址:https://www.cnblogs.com/tangjiansheng/p/5996773.html