DOKK / manpages / debian 12 / libnet-async-fastcgi-perl / Net::Async::FastCGI::PSGI.3pm.en
Net::Async::FastCGI::PSGI(3pm) User Contributed Perl Documentation Net::Async::FastCGI::PSGI(3pm)

"Net::Async::FastCGI::PSGI" - use "PSGI" applications with "Net::Async::FastCGI"

 use Net::Async::FastCGI::PSGI;
 use IO::Async::Loop;
 my $loop = IO::Async::Loop->new;
 my $fcgi = Net::Async::FastCGI::PSGI->new(
    port => 12345,
    app => sub {
       my $env = shift;
       return [
          200,
          [ "Content-Type" => "text/plain" ],
          [ "Hello, world!" ],
       ];
    },
 );
 $loop->add( $fcgi );
 $loop->run;

This subclass of Net::Async::FastCGI allows a FastCGI responder to use a PSGI application to respond to requests. It acts as a gateway between the FastCGI connection from the webserver, and the "PSGI" application. Aside from the use of "PSGI" instead of the "on_request" event, this class behaves similarly to "Net::Async::FastCGI".

The following named parameters may be passed to "new" or "configure":

Reference to the actual "PSGI" application to use for responding to requests

The following extra keys are supplied to the environment of the "PSGI" app:

"net.async.fastcgi"
The "Net::Async::FastCGI::PSGI" object serving the request
"net.async.fastcgi.req"
The Net::Async::FastCGI::Request object representing this particular request
"io.async.loop"
The IO::Async::Loop object that the "Net::Async::FastCGI::PSGI" object is a member of.

  • PSGI - Perl Web Server Gateway Interface Specification
  • Plack::Handler::Net::Async::FastCGI - FastCGI handler for Plack using Net::Async::FastCGI

Paul Evans <leonerd@leonerd.org.uk>

2022-12-10 perl v5.36.0