今週からWebフレームワークを使用したサンプルコードになります。
まずはお馴染みのHello world。
[package]
name = "todo"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
actix-web = { version = "4.1" }
actix-rt = { version = "2.7" }
use actix_web::{get, App, HttpResponse, HttpServer};
#[get("/")]
async fn index() -> Result<HttpResponse, actix_web::Error> {
let response_body = "Hello world";
Ok(HttpResponse::Ok().body(response_body))
}
#[actix_rt::main]
async fn main() -> Result<(), actix_web::Error> {
HttpServer::new(move || App::new().service(index))
.bind("0.0.0.0:8080")?
.run()
.await?;
Ok(())
}
ちなみに、サンプルコードにはクレートの追加にcargo addコマンドを使用していますが、
WSLにはcargo addコマンドがないので、
cargo.tomlファイルの[dependencies]の蘭に記入する必要があります。
なお、バージョンが解らないときは、
cargo searchコマンドでリポジトリを探してくれます。
「RUST勉強中、7/17の積み上げ」への1件のフィードバック