http1_1_or_higher

Attribute Macro http1_1_or_higher 

Source
#[http1_1_or_higher]
Expand description

Restricts function execution to HTTP/1.1 or higher protocol versions.

This attribute macro ensures the decorated function only executes for HTTP/1.1 or newer protocol versions, including HTTP/2, HTTP/3, and future versions.

ยงUsage

use hyperlane::*;
use hyperlane_macros::*;

#[route("/http1_1_or_higher")]
struct Http11OrHigher;

impl ServerHook for Http11OrHigher {
    async fn new(_ctx: &Context) -> Self {
        Self
    }

    #[prologue_macros(http1_1_or_higher, response_body("http1_1_or_higher"))]
    async fn handle(self, ctx: &Context) {}
}

impl Http11OrHigher {
    #[http1_1_or_higher]
    async fn http1_1_or_higher_with_ref_self(&self, ctx: &Context) {}
}

#[http1_1_or_higher]
async fn standalone_http1_1_or_higher_handler(ctx: &Context) {}

The macro takes no parameters and should be applied directly to async functions that accept a &Context parameter.