in reply to Showing HTTP response headers

Response headers can be added by any part of the system at basically any time (Unless you've sent a blank line already), so basically you are stuck. If you can some how arrange for your module to be loaded before any headers are sent, you could tie STDOUT and capture the headers before sending them off.

Replies are listed 'Best First'.
Re^2: Showing HTTP response headers
by Joost (Canon) on Jan 08, 2005 at 19:44 UTC
    Response headers can be added by any part of the system at basically any time (Unless you've sent a blank line already), so basically you are stuck.
    And proxies can add even more headers while forwarding the response... Depending on what the OP wants, using firefox with the live HTTP headers plugin can be used to display the headers as they arrive at the browser.

    Otherwise you might also be able to capture the STDOUT output of the called subroutines (if it doesn't use STDOUT explicitly):

    #!/usr/local/bin/perl -w use strict; sub prints_headers { print "Content-type: text/html\n\n"; } my $output; open my $NEWSTDOUT,">",\$output; select $NEWSTDOUT; prints_headers(); select STDOUT; print "Captured '$output'\n";
      I have added code to my original post to make my question clearer.