NAME

Unblock::HTTP3::Request - Uniform HTTP request with HTTP/3 helpers

SYNOPSIS

my $request = Unblock::HTTP3::Request->new(
    method    => 'GET',
    target    => '/',
    scheme    => 'https',
    authority => 'example.com',
    priority  => {
        urgency     => 1,
        incremental => 0,
    },
);

DESCRIPTION

Unblock::HTTP3::Request is a thin subclass of Uniform::HTTP::Request.

Uniform::HTTP owns the common HTTP message data: method, target, scheme, authority, Extended CONNECT protocol metadata, headers, trailers, buffered body state, fidelity, mutability, and completeness.

Unblock::HTTP3 adds RFC 9218 priority convenience methods and request-stream abort diagnostics.

A plain Uniform::HTTP::Request can also be submitted directly to Unblock::HTTP3::Connection.

CONSTRUCTOR

new

Accepts the normal Uniform::HTTP::Request constructor arguments plus an optional priority hash reference.

METHODS

priority

my $priority = $request->priority;

$request->priority(
    urgency     => 1,
    incremental => 1,
);

Gets or sets the RFC 9218 Priority field.

Urgency is 0 through 7. Incremental is 0 or 1.

reset_code

Returns the HTTP/3 reset code recorded for this Request, or undef.

stop_sending_code

Returns the HTTP/3 STOP_SENDING code recorded for this Request, or undef.

is_aborted

True when a reset or STOP_SENDING code has been recorded.

SEE ALSO

Uniform::HTTP::Request, Unblock::HTTP3::Connection, Unblock::HTTP3::Transaction

AUTHOR

Joshua S. Day

LICENSE

This software is available under the MIT License.