Beefy Boxes and Bandwidth Generously Provided by pair Networks vroom
"be consistent"
 
PerlMonks  

Re^2: CGI upload efficiency

by Anonymous Monk
on May 08, 2012 at 22:27 UTC ( #969540=note: print w/ replies, xml ) Need Help??


in reply to Re: CGI upload efficiency
in thread CGI upload efficiency

Thanks for the example, I'll try it straight away.

my $q = CGI->new(\&hook, 'some arbitrary data', 0);

If I read this correctly, the '0' tells CGI not to write data to it's normal file and therefore the bits will only end up going wherever &hooks directs them to?

Regarding the temp file location, I had trouble changing the location in code, but setting the TMPDIR env variable in the OS worked for what I needed.

The behavior I saw was that even on the same drive CGI made a copy of the file and then unlinked the CGITemp one. On a 2GB file the delay was quite noticeable, so I used sysinternals procmon to verify that the data was infact copied, even when on the same disk. It could work differently on linux, no doubt. It really wouldn't be an issue either way if the files were a more reasonable size ;)


Comment on Re^2: CGI upload efficiency
Re^3: CGI upload efficiency
by sauoq (Abbot) on May 08, 2012 at 22:41 UTC
    If I read this correctly, the '0' tells CGI not to write data to it's normal file and therefore the bits will only end up going wherever &hooks directs them to?

    Yes. If you instantiate CGI.pm this way, it won't write the uploaded data to a temp file. Your only chance to do something with it is as you get it chunk by chunk in your callback routine (the hook function.)

    -sauoq
    "My two cents aren't worth a dime.";

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://969540]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (6)
As of 2013-05-19 20:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best material for plates (tableware) is:









    Results (397 votes), past polls