1 unstable release

0.8.0 Jan 20, 2020

#3 in #actori-web

MIT/Apache

37KB
658 lines

Actori redis Build Status codecov

Redis integration for actori framework.

Documentation

Redis session backend

Use redis as session storage.

You need to pass an address of the redis server and random value to the constructor of RedisSessionBackend. This is private key for cookie session, When this value is changed, all session data is lost.

Note that whatever you write into your session is visible by the user (but not modifiable).

Constructor panics if key length is less than 32 bytes.

use actori_web::{App, HttpServer, web, middleware};
use actori_web::middleware::session::SessionStorage;
use actori_redis::RedisSessionBackend;

#[actori_rt::main]
async fn main() -> std::io::Result {
    HttpServer::new(|| App::new()
        // enable logger
        .middleware(middleware::Logger::default())
        // cookie session middleware
        .middleware(SessionStorage::new(
            RedisSessionBackend::new("127.0.0.1:6379", &[0; 32])
        ))
        // register simple route, handle all methods
        .service(web::resource("/").to(index))
    )
    .bind("0.0.0.0:8080")?
    .start()
    .await
}

License

This project is licensed under either of

at your option.

Code of Conduct

Contribution to the actori-redis crate is organized under the terms of the Contributor Covenant, the maintainer of actori-redis, @fafhrd91, promises to intervene to uphold that code of conduct.

Dependencies

~12–23MB
~341K SLoC