in reply to Re: Write a Filehandle w/Dancer2
in thread Write a Filehandle w/Dancer2

Hi, I just saw that to in Dancer2::Core::App

There's also nowhere in the code that actually handles the callback.

Sure there is, send_file creates a Dancer2::Handler::File , which does that

Regarding streaming the https://metacpan.org/pod/Dancer2::Manual#send_file says Send file supports streaming possibility using PSGI streaming. The server should support it but normal streaming is supported on most, if not all.

So , give it real pathname (not a scalar reference), and try override

Replies are listed 'Best First'.
Re^3: Write a Filehandle w/Dancer2
by hardburn (Abbot) on Aug 14, 2014 at 02:47 UTC

    Tried this, but it gives a 404 error:

    return send_file( '/dev/null', streaming => 1, system_path => 1, content_type => $mime_type, callbacks => { override => sub { my ($respond, $response) = @_; my $writer = $respond->([ 200, {} ]); my $buf = ''; while( read( $in_fh, $buf, VID_READ_LENGTH ) ) { $writer->write( $buf ); } } }, );

    Debugger still shows that the callback isn't called.


    "There is no shame in being self-taught, only in not trying to learn in the first place." -- Atrus, Myst: The Book of D'ni.

      I do believe that the docs for Dancer2 send_file are more "wishlist" or "todo" than "this is how it works", this is based of my reading of send_file and Dancer2::Handler::File

      send the bug upstream :)