Eric St-Jean
esj at wwd.ca
Tue Jan 11 22:30:23 EST 2005
Hi, sorry if this is has been covered, but i tried looking through this mailing list and google and usenet, but couldn't find anything satisfactory... i have a form, to upload a file to the server through mod_python/apache, on a debian stable server (apache 1.3.26-0woody6, mod_python 2.7.8-0.0woody2, i386). it works perfectly fine. i figured out how, when the client clicks on Submit, to get a popup to open which fetches a different webpage, along with state info sent with POST. my idea was to get this other page to reload every x seconds, and it would show succintly how the upload was going (%, speed basically), just to give some feedback for large files. But... a- i have no idea - and i've really looked in a lot of places and tried many things! - how to get information on how much data has been transferred, and how much the client said there would be! actually: i know how much he said there would be, as i have a headerparserhandler which sees the Content-Length; but i don't know how to get the current amount of data transferred b- in the end, i get a file object, but i can't just move it (is it a pipe? a socket?), so i need to make a copy; this all seems very wasteful, to have apache get the file, put it in a tmp place, then me in mod_python copy the entire file over, and later on apache deleting its temp file... Through some debugging, i saw that my headerparserhandler does see the request as the file transfer begins, but my pythonhandler - the one which sees the form data, and hence the file object - only sees the request once the transfer is over. What's more, the client only gets the reply after all this is done - doing req.send_http_header and req.write in the headerparserhandler doesn't actually get apache to send the headers and the first bit of a webpage until the whole file got in. I suspect that many of the above statements are either obvious to most of you, or painfully wrong... i desperately need some pointers. I would rather not have to go to apache 2.0 if i don't have to, but please do tell me if that's the only way i'll get what i want... it might be the kick i needed to upgrade. can anyone give me a quick hand? a functional code example perhaps??? it would so immensely appreciated. thank you very much! -- ______________________________ Eric St-Jean esj at wwd.ca
|