Creare una API REST in Rust e Actix

Mattepuffo's logo
Creare una API REST in Rust e Actix

Creare una API REST in Rust e Actix

Actix è un web framework per Rust, molto potente e flessibile.

Una delle cose che mi è piaciuta molto è la documentazione, che mi ha permesso di far qualche esperimento base in poco tempo.

Per installarlo agigungete queste dipendenza a Cargo.toml:

[dependencies]
actix-web = "2.0"
actix-rt = "1.0"

Questo il nostro codice Rust:

use actix_web::{web, get, App, HttpResponse, HttpServer, Responder};

async fn index() -> impl Responder {
    HttpResponse::Ok().body("Scegli unpath specifico")
}

#[get("/hello")]
async fn say_hello() -> impl Responder {
    HttpResponse::Ok().body("Hey there!")
}

#[actix_rt::main]
async fn main() -> std::io::Result<()> {
    HttpServer::new(|| {
        App::new()
            .route("/", web::get().to(index))
            .service(say_hello)
    }).bind("127.0.0.1:8088")?.run().await
}

Come vedete abbiamo due path:

  • http://localhost:8080/
  • http://localhost:8080/hello/

Il primo path lo abbiamo aggiunto con la funzione route; il secondo come service.

Diciamo che questo secondo metodo è quello più comune quando si hanno parecchi path.

Prossimanente vedremo come inviare la risposta in formato JSON.

Enjoy!


Condividi

Commentami!