none
Erreur Web.Config : (413) Request Entity Too Large RRS feed

  • Question

  • Bonjour,

    Le service WCF gère un flux dans les 2 sens de tableau de Byte (des images).

    J'ai tout d'abord modifié le Web.Config pour augmenter maxReceivedMessageSize.

    Mais j'ai encore l'erreur :

    "Le serveur distant a renvoyé une réponse inattendue : (413) Request Entity Too Large."

    Voici le Web.Config coté serveur :

     <system.serviceModel>
        <bindings>
          <basicHttpBinding>
            <binding name="basicHttpBinding_WCFPhoto" receiveTimeout="00:10:00"
              sendTimeout="00:10:00" maxReceivedMessageSize="4194304"  maxBufferSize="4194304" maxBufferPoolSize="4194304" transferMode="Buffered" >
              <readerQuotas maxArrayLength="4194304"  />
              
            </binding>
          </basicHttpBinding>
        </bindings>
        <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
        <services>
          <service behaviorConfiguration="WcfGrangePhoto.WCFPhotoBehavior"
            name="WcfGrangePhoto.WCFPhoto">
            <endpoint address="" binding="basicHttpBinding" contract="WcfGrangePhoto.IWCFPhoto" name="basicHttpBinding_WCFPhoto"/>
            <!--<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />-->
          </service>
        </services>
        <behaviors>
          <serviceBehaviors>
            <behavior name="WcfGrangePhoto.WCFPhotoBehavior">
              <serviceMetadata httpGetEnabled="true"/>
              <serviceDebug includeExceptionDetailInFaults="true"/>
            </behavior>
          </serviceBehaviors>
        </behaviors>
      </system.serviceModel>
    </configuration>

    Voici l'App.Config du client :

      <system.serviceModel>
        <bindings>
          <basicHttpBinding>
            <binding name="BasicHttpBinding_IWCFCat"  />
            <binding name="basicHttpBinding_WCFPhoto" receiveTimeout="00:10:00"
              sendTimeout="00:10:00" maxReceivedMessageSize="4194304"  maxBufferSize="4194304" maxBufferPoolSize="4194304" transferMode="Buffered">
            </binding>
            
          </basicHttpBinding>
        </bindings>
        <client>
          <endpoint address="http://localhost:52819/WCFCat.svc" binding="basicHttpBinding"
            bindingConfiguration="BasicHttpBinding_IWCFCat" contract="WCFCat.IWCFCat"
            name="BasicHttpBinding_IWCFCat" />
          <endpoint address="http://localhost:56282/WCFPhoto.svc" binding="basicHttpBinding"
            bindingConfiguration="basicHttpBinding_WCFPhoto" contract="WCFPhoto.IWCFPhoto"
            name="basicHttpBinding_WCFPhoto"  />
        </client>
      </system.serviceModel>


    jeudi 17 octobre 2013 21:57

Réponses

  • Bonjour,

    Des 2 côtés.

    Si le problème persiste pouvez vous activer les traces WCF et nous indiquer le message de l'exception qui est levé plus précisément (l'exception "Entity Too Large" peut provenir au niveau WCF de time-out, dépassement du paramètre maxReceivedMessageSize et plein d'autres problèmes,...etc).

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    dimanche 20 octobre 2013 19:12
    Modérateur

Toutes les réponses

  • Coté IIS j'ai aussi essayé de modifier applicationHost.config

    En ajoutant ceci :

    <location path="Default Web Site" overrideMode="Allow">
        <system.webServer>
          <asp />
          <serverRuntime uploadReadAheadSize="2147483647" />
        </system.webServer>
      </location>
    Mais l'erreur persiste...

    FB

    vendredi 18 octobre 2013 09:49
  • Bonjour,

    Pour être sur avant d'aller plus loin, pouvez vous augmenter le quota en multipliant par 10 et ensuite par 100 dans "maxReceivedMessageSize" ?

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    dimanche 20 octobre 2013 13:10
    Modérateur
  • J'ai TOUT monté à

    2147483647

    Je crois que c'est le max non?

    Pour information, je transferts un tableau de byte provenant d'une photo de 217 Ko

    vers mon service WCF.


    FB


    dimanche 20 octobre 2013 13:29
  • par contre, c'est bien coté client que je doit implémenter ceci?

    FB

    dimanche 20 octobre 2013 16:43
  • Bonjour,

    Des 2 côtés.

    Si le problème persiste pouvez vous activer les traces WCF et nous indiquer le message de l'exception qui est levé plus précisément (l'exception "Entity Too Large" peut provenir au niveau WCF de time-out, dépassement du paramètre maxReceivedMessageSize et plein d'autres problèmes,...etc).

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    dimanche 20 octobre 2013 19:12
    Modérateur