IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Fileupload : erreur sur gros fichier


Sujet :

ASP.NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut Fileupload : erreur sur gros fichier
    bonjour, si je fais un upload (via un uploadfile) d'un gros fichier.
    J'obtiens une grosse excpetion.
    "System.Web.HttpUnhandledException: Une exception de type 'System.Web.HttpUnhandledException' a été levée. ---> System.Web.HttpException: Longueur maximale de la demande dépassée.\r\n à System.Web.HttpRequest.GetEntireRawContent()\r\n à System.Web.HttpRequest.GetMultipartContent()\r\n à System.Web.HttpRequest.FillInFormCollection()\r\n à System.Web.HttpRequest.get_Form()\r\n à System.Web.HttpRequest.get_HasForm()\r\n à System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull)\r\n à System.Web.UI.Page.DeterminePostBackMode()\r\n à System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n --- Fin de la trace de la pile d'exception interne
    Cette exception ne me derange pas outre mesure vu que je ne veux pas que l'on upload des gros fichiers, mon probleme est plus dans le fait que je recupere l'exception dans Application_Error de mon 'globall.asax' et non pas dans ma page et donc je n'arrive pas à retomber sur mes pieds. Ce que je voudrais c'est jsute afficher un message dans ma page indiquant que le fichier est trop.

    En ce moment j'autorise les fichiers de 1Mo.
    si ils font entre 1Mo et 4Moo, je n'ai pas d'erreur et donc je traite le probleme avec un message dans ma page mais au-dessus cela explose.

    PS : pour avoir fait des tests sur pas mal de sites, il y en a bcp qui explosent .

    Et vous, comment faites vous ?

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Salut,

    Il y a pas mal d'exemples sur le net à ce propos. Il suffit juste de parapétrer le web.config
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      <httpRuntime 
        maxRequestLength="1048576"
        executionTimeout="3600"
      />
    A+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 262
    Points : 95
    Points
    95
    Par défaut
    je connais cette solution mais ma question était plus pour savoir si il y avait un pretraitement possible en amont.
    maxRequestLength est un parametre de sécurité (pour éviter les denis de services....)
    Et donc le modifier juste pour que cela puisse me permettre de dire à l'utiliateur que son fichier est trop gros me semble quelque chose de peu convenable.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Tu pourrais utiliser un plug-in, Silverlight (ou Flash ou Java () ou ActiveX ()) pour effectuer l'upload. Tu peux contrôler précisement comment le fichier est transmis au serveur et faire des validations côté client avant (taille du fichier, format etc.) avant de l'envoyer au serveur. Plus besoin de se soucier de la taille maximale et du time-out (possibilité d'envoyer le fichier en plusieurs parties).

    De plus, tu peux uploader des fichiers énormes sans pour autant modifier le web.config et compromettre la sécurité du site via des attaques par DoS.

Discussions similaires

  1. [2K5][SSAS] erreur sur le fichier journal
    Par geof dans le forum SSAS
    Réponses: 1
    Dernier message: 07/07/2008, 08h58
  2. Réponses: 5
    Dernier message: 09/01/2008, 20h30
  3. Erreur sur mon fichier web.xml
    Par Chikh001 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 26/12/2007, 09h30
  4. [phpBB] Erreur sur le fichier usercp_register
    Par webfranc dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 14/11/2007, 09h13
  5. Opération sur (gros) fichier
    Par sloshy dans le forum C
    Réponses: 8
    Dernier message: 24/10/2007, 19h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo