Hi Sébastien,

On Mon, 20 Aug 2007 12:11:33 -0500, Sébastien HEITZMANN <[EMAIL PROTECTED]> wrote:

Hi

I'm new to twisted programming and I'm wonder how to do the following thing.

I would like to save in a file the content of a PUT method. But i need
this in a stream mode ( the data may be handred of MB )

Here is a part of my code.

class DataResource(resource.Resource):
    def __init__(self, dbConnection):
        resource.Resource.__init__(self)

    def render_PUT(self, request):
        request.content.seek(0)
        file('data.dat','wb').write(request.content.read())
        request.write('OK')
        request.finish()


Thats inspired by an exemple of the oreilly book.

Is there a way to get a coolback juste after the header was sended and
to handle the reading of the remaining data myself ?

I use only web, not the new web2 api.


You cannot stream large files using twisted.web unless you write your
own mechanism.  On the other hand, web2 *does* support streaming file
uploads, so I would advise you to think about using web2 instead, if
you really want streaming.

Someone with deeper knowledge of twisted.web may be able to propose
a strategy for implementing streaming file uploads, but I expect it
would be a fair amount of work, and end up looking similar to what
is already in web2.

Thanks in advance for any help or link.

Sebastien.


Hope this helps,

--
L. Daniel Burr

_______________________________________________
Twisted-web mailing list
[email protected]
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web

Reply via email to