#io #url #middleware #service #requests #send #prerender

actix-prerender

Actix middleware that sends requests to Prerender.io or a custom Prerender service URL

6 releases

0.2.4 Apr 25, 2022
0.2.3 Mar 8, 2022
0.1.0 Mar 2, 2022

#1224 in HTTP server

31 downloads per month

MIT license

23KB
502 lines

actix-prerender

A simple middleware that sends HTTP requests from known crawlers user-agents to render as HTML by an external prerender service URL such as tvanro/prerender-alpine, or from the service from the creators prerender.io.

Useful to websites with tons of javascript, such as SPAs like Vue.js or React among others.

Usage

Prerender.io example


 use actix_prerender::Prerender;
 use actix_web::http::header;

 let token = "prerender service token".to_string();
 let prerender = Prerender::build().use_prerender_io(token);

 // `prerender` can now be used in `App::wrap`.

Custom service URL example

use actix_prerender::Prerender;
use actix_web::http::header;

let token = "prerender service token".to_string();
let prerender = Prerender::build().use_custom_prerender_url("https://localhost:5001");

// `prerender` can now be used in `App::wrap`.

Installation

Add this into your Cargo.toml

actix-prerender = "0.2"

Dependencies

~18–34MB
~612K SLoC