BrowserPoolAxumExt

Trait BrowserPoolAxumExt 

Source
pub trait BrowserPoolAxumExt {
    // Required methods
    fn into_axum_state(self) -> SharedBrowserPool;
    fn into_axum_extension(self) -> Extension<SharedBrowserPool>;
}
Expand description

Extension trait for BrowserPool with Axum helpers.

Provides convenient methods for integrating with Axum.

Required Methods§

Source

fn into_axum_state(self) -> SharedBrowserPool

Convert the pool into a form suitable for Axum’s with_state().

§Example
use html2pdf_api::integrations::axum::BrowserPoolAxumExt;

let pool = BrowserPool::builder()
    .factory(Box::new(ChromeBrowserFactory::with_defaults()))
    .build()?;

let state = pool.into_axum_state();

Router::new()
    .route("/pdf", get(generate_pdf))
    .with_state(state)
Source

fn into_axum_extension(self) -> Extension<SharedBrowserPool>

Convert the pool into an Extension layer.

§Example
use axum::Extension;
use html2pdf_api::integrations::axum::BrowserPoolAxumExt;

let pool = BrowserPool::builder()
    .factory(Box::new(ChromeBrowserFactory::with_defaults()))
    .build()?;

let extension = pool.into_axum_extension();

Router::new()
    .route("/pdf", get(generate_pdf))
    .layer(extension)

Implementors§