WCF错误:413 Request Entity Too Large

在我们用WCF传输数据的时候,如果启用默认配置,传输的数据量过大,经常会出这个错误。

WCF包含服务端与客户端,所以这个错误可能出现在服务端返回数据给客户端,或客户端传数据给服务端时。

1. 服务端返回数据给客户端报错

在客户端配置文件中,主要是配置maxReceivedMessageSize

<system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="ServiceProxyBinding" closeTimeout="00:10:00" receiveTimeout="00:10:00"
          sendTimeout="00:10:00" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
          <readerQuotas maxStringContentLength="134217728" />
        </binding>
      </basicHttpBinding>
    </bindings>
    <client>
      <endpoint address="http://localhost:5239/AHMTService/PartService.svc"
        binding="basicHttpBinding" bindingConfiguration="ServiceProxyBinding"
        contract="UniCloud.ServiceContracts.IPartService" name="IPartService" />
    </client>
  </system.serviceModel>

2 客户端传数据给服务端报错

修改服务端web.config,主要也是配置maxReceivedMessageSize

<system.serviceModel>
    <services>
      <!--DecodeService 服务端配置 增加接收文件大小-->
      <service name="UniCloud.Services.DecodeService" behaviorConfiguration="MyServiceBehaviour" >
        <endpoint address="" binding="basicHttpBinding" bindingConfiguration="MyServiceBinding" contract="UniCloud.ServiceContracts.IDecodeService">
        </endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:5239/AHMTService"/>
          </baseAddresses>
        </host>
      </service>
    </services>
    <bindings>
      <basicHttpBinding>
        <binding name="MyServiceBinding"  closeTimeout="00:10:00" receiveTimeout="00:20:00" sendTimeout="00:20:00"
maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
          <security mode="None"></security>
        </binding>
      </basicHttpBinding>
    </bindings>
    <behaviors>
      <serviceBehaviors>
        <behavior name="MyServiceBehaviour">
          <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false -->
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
          <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
          <serviceDebug includeExceptionDetailInFaults="true" />
          <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <protocolMapping>
      <add binding="basicHttpsBinding" scheme="https" />
    </protocolMapping>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  </system.serviceModel>

其实要修改所有的服务,不管是服务端还是客户端,Binding那边增加一个没有设置名字的默认配置就OK了

 <binding   closeTimeout="00:10:00" receiveTimeout="00:20:00" sendTimeout="00:20:00"
maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">

WCF错误:413 Request Entity Too Large

时间: 2024-09-29 16:11:28

WCF错误:413 Request Entity Too Large的相关文章

Nginx出现413 Request Entity Too Large错误解决方法

Nginx出现的413 Request Entity Too Large错误,这个错误一般在上传文件的时候出现,打开nginx主配置文件nginx.conf,找到http{}段,添加 解决方法就是 打开nginx主配置文件nginx.conf,一般在/usr/local/nginx/conf/nginx.conf这个位置,找到http{}段,修改或者添加  代码如下 复制代码 client_max_body_size 2m; 然后重启nginx,  代码如下 复制代码 sudo /etc/ini

Nginx出现“413 Request Entity Too Large”错误解决方法

今天使用phpmyadmin的导入功能的时候,由于sql文件过大,服务器出现错误提示了,413 Request Entity Too Large,google了一下,发现是Nginx的错误提示.  解决方法:打开nginx主配置文件nginx.conf,找到http{}段,添加 client_max_body_size 100m; fedora下 vi /etc/nginx/nginx.conf  重启NGINX   sudo /etc/init.d/nginx restart 恢复正常

“413 Request Entity Too Large” 错误解决

错误现象"nginx 413 when uploading file 1mb or larger": 原来跑的好好的程序,使用nginx做代理后,上传大于1M 的文件提交表单时就请求不到后台方法了,一开始还以为是自己程序哪里出了问题,各种折腾重新部署啥的调试了大半天,还是不行,后来用chrome的F12查看network才发现是"413 Request Entity Too Large" 这么个错误,如图: 随后便google之,发现nginx默认限制了最大上传文件

Nginx出现413 Request Entity Too Large错误

一. 问题出现 使用phpMyAdmin管理mysql数据,使用图形界面导入sql语句时报错,报错内容如下: 二. 问题原因 出现了413错误,413错误是因为用户请求body的数据大于设置的值.用户请求的body的值可用Content-Length看到 可以看到请求的body大小大于6M,通过查看Nginx官网可知默认request body为1M,而设置request body的参数为client_max_body_size 三. 解决问题的方法 修改client_max_body_size

413 Request Entity Too Large错误处理

起因说明:因业务要求,客户需要对以往客户进行阶段性做客户挖掘分析,分析内容包含,客户消费记录.消费内容.客户基本信息情况等行为操作进行分析,客户要求的前端展现行为分析方式是一个页面尽量展现越多的数据越好,因浏览器容量问题,最终跟客户协商一个页面展现2000行记录,四十个字段,而且展现的字段内容有问题反馈等文字描述性的内容,然后对该内容在进行更新提交给服务器,然后在查看更新结果,因提交和展现的页面数据容量偏大,最终导致无法展现相关信息,导致页面报:413 Request Entity Too La

svn 413 Request Entity Too Large 错误

最近svn检出代码报错:svn 413 Request Entity Too Large svn使用的是自己搭建:svn+LDAP+Apache集成,因此初步定位应该为http 配置,限制了用户请求的页面的大小. 修改apache的配置文件,在其中加入,以下两行,之后重启httpd服务,即修复 LimitXMLRequestBody 0LimitRequestBody 0 客户端--子目录分别更新又可以了 原文地址:http://blog.51cto.com/10700164/2086343

nginx、Apache、IIS中413 Request Entity Too Large问题解决方法

分享下nginx.Apache.IIS三种服务器解决413 Request Entity Too Large问题的方法. 一.nginx服务器 nginx出现这个问题的原因是请求实体太长了.一般出现种情况是Post请求时Body内容Post的数据太大了,如上传大文件过大.POST数据比较多. 处理方法在nginx.conf增加 client_max_body_size的相关设置, 这个值默认是1m,可以增加到8m以增加提高文件大小限制:当然可以设置的更大点.# 在http,server或者loc

运维挖坑埋坑之旅----413 Request Entity Too Large

好久没写博文了,天天忙的喘不过来气.最近是该总结总结前段时间的工作了,顺便缓解下这两天的霉气. 今天在内部上了一套图片编辑系统,结果下午就收到开发的报错,报错信息如下: <html> <head><title>413 Request Entity Too Large</title></head> <body bgcolor="white"> <center><h1>413 Request E

nginx 问题 413 Request Entity Too Large的解决方法

上传图片出现Nginx出现"413 Request Entity Too Large"错误解决方法 看了一下nginx.conf发现没有设置client_max_body_size,这个参数默认只是1M,也就是说发布的文章内容大小不能超过1M 解决方法:打开nginx主配置文件nginx.conf,找到http{}段,添加 client_max_body_size 20m;