WCF入门(一)--Request Entity Too large 传输的数据量过大

通过WCF进行数据的查询或者添加的时候,如果数据量过大,一般会报出如下的错误:

1、已超过传入消息(65536)的最大消息大小配额。若要增加配额,请使用相应绑定元素上的MaxReceivedMessageSize 属性。

2、远程服务器返回了意外反应(413)Request Entity too large。

3、远程服务器返回了意外反应(400)Bad Request。

具体的解决方案:

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

在客户端的配置文件中,主要修改maxReceivedMessageSize

<system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_Default" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
          <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
          <security mode="None">
            <transport clientCredentialType="None" proxyCredentialType="None" realm="" />
            <message clientCredentialType="UserName" algorithmSuite="Default" />
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>

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

修改服务端web.config

<system.serviceModel>
    <bindings>
      <basicHttpBinding>                                                                                                       <!--其实要修改所有的服务,不管是服务端还是客户端,Binding那边增加一个没有设置名字的默认配置就OK了-->
        <binding   closeTimeout="00:10:00" receiveTimeout="00:20:00" sendTimeout="00:20:00"
       maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
        </binding >
        </basicHttpBinding>
    </bindings>
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false -->
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
          <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
          <serviceDebug includeExceptionDetailInFaults="True" />
          <dataContractSerializer maxItemsInObjectGraph="2147483647" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" minFreeMemoryPercentageToActivateService="1" />
  </system.serviceModel>
时间: 2024-08-25 16:17:13

WCF入门(一)--Request Entity Too large 传输的数据量过大的相关文章

WCF错误:413 Request Entity Too Large

在我们用WCF传输数据的时候,如果启用默认配置,传输的数据量过大,经常会出这个错误. WCF包含服务端与客户端,所以这个错误可能出现在服务端返回数据给客户端,或客户端传数据给服务端时. 1. 服务端返回数据给客户端报错 在客户端配置文件中,主要是配置maxReceivedMessageSize <system.serviceModel> <bindings> <basicHttpBinding> <binding name="ServiceProxyBi

wcf Request Entity Too Large 错误

今天试着使用wcf上传文件,大小为2.4MB就报错了,报Request Entity Too Large错误. 修改配置文件,增加bindings设置,修改binding 的maxReceivedMessageSize设置,如下所示 <system.serviceModel> <behaviors> <serviceBehaviors> <behavior> <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false --> <s

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

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

“Request Entity Too Large” 上传图片出现大小限制

昨天公司安卓app上传了图片爆了下面这个错误 <"-//IETF//DTD HTML 2.0//EN"> <html><head> <title>413 Request Entity Too Large</title> </head><body> <h1>Request Entity Too Large</h1> The requested resource<br />

运维挖坑埋坑之旅----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”错误解决方法

今天使用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 恢复正常

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;

request entity too large: head

nginx返回的错误 配置多个vhost,nginx在处理header时实际分配的buffer大小,是解析conf后,default_server中的最终值. 若http中有配置,server中无配置,以http中配置为准:若http中有配置,server中无配置,以server中配置为准:若http中无配置,server中无配置,以默认配置为准. get请求:是因为请求头过大,最大可能是你参数太多,大于nginx的默认配置,修改参数 client_header_buffer_size 该参数对