Tornado Handler pense que Post est un argument lorsque Firebug montre l'argument envoyé

StackOverflow https://stackoverflow.com/questions/3073462

  •  28-09-2019
  •  | 
  •  

Question

J'ai un formulaire simple en utilisant une méthode post-post, composée d'une zone de texte et d'un fichier. Après avoir été soumis, je peux voir le post dans Firebug comme suit:

Parts       multipart/form-data
posttext    Some text
image   BlahJFIFBlahExifBlahPhotoshopBlahBinaryStuff etc...

Le gestionnaire de tornade qui le reçoit ressemble:

class NewPostHandler(BaseHandler, MessageMixin):
    @tornado.web.authenticated 
    def post(self):
        message = {
            'posttext':self.get_argument('posttext'), 
            'image':self.get_argument('image'),
            etc          

Mais le gestionnaire de Tornado revient:

[W 100618 23:07:32 web:775] 404 POST /a/message/new (127.0.0.1): Missing argument image

Je ne sais pas trop ce que je fais mal ici. Ai-je raison de penser «l'argument» signifie l'attribut «nom» d'un élément d'entrée? Comment puis-je faire voir le gestionnaire de voir l'argument?

Merci pour votre aide, j'ai du mal avec ça depuis une heure et je dois admettre que je suis perplexe!

Était-ce utile?

La solution

Pour les téléchargements de fichiers, vous devez utiliser self.request.files à la place de self.get_argument().

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top