NAME
Net::HTTP2 - HTTP/2 in Perl, simplified.
SYNOPSIS
DESCRIPTION
This distribution wraps Protocol::HTTP2 to simplify use of HTTP/2 in Perl.
See Net::HTTP2::Client for the client interface.
(This class itself exposes no code; it’s just here as generic documentation for the distribution.)
STATUS
This module is experimental. Interface changes may still happen, and error handling may not be all up to snuff. Please file bug reports as appropriate.
EVENT LOOPS/ABSTRACTIONS
HTTP/2 fits most naturally into non-blocking (rather than blocking) I/O; hence, this module requires use of an event loop. To ensure broad compatibility, this library supports multiple event loop abstractions. Currently AnyEvent, IO::Async, and Mojolicious are supported.
TLS
Since the major web browsers require TLS for HTTP/2, this library does, too. Thus, this library needs Net::SSLeay, and it must link to an OpenSSL that supports ALPN or NPN.
(NB: Otherwise, this module and its non-core dependency tree are pure Perl!)
If there’s a need for unencrypted HTTP/2, it can be added easily enough.
CHARACTER ENCODING
Unless otherwise noted, all strings into & out of this library are byte strings.
ERROR HANDLING
Most thrown errors are Net::HTTP2::X::Base instances.
SEE ALSO
Shuvgey is an HTTP/2 server. Like this module it wraps Protocol::HTTP2, but it targets a more specific use case.
Net::Curl::Easier offers another path to HTTP/2 in Perl as long as your system’s curl supports it.
HTTP::Tiny comes with Perl and exposes a simple interface for running HTTP/1 queries.
LICENSE & COPYRIGHT
Copyright 2022 Gasper Software Consulting. All rights reserved.
Net::HTTP2 is licensed under the same terms as Perl itself (cf. perlartistic).