啟動文件 main.rs
use controller;//引入的本地文件
use actix_web::{middleware, web, App, HttpServer};
#[actix_rt::main]
async fn main() -> std::io::Result<()> {
std::env::set_var("RUST_LOG", "actix_web=info");
env_logger::init();
HttpServer::new(||
{
App::new()
.wrap(middleware::Logger::default())
.route("/psot",web::post().to(controller::post))//post請求
.route("/get",web::get().to(controller::get))//get請求
})
.bind(":100")?
.run()
.await
}
controller 層
記得創(chuàng)建 mod.rs ,并在其中 添加controller
該mod需要在main.rs中 引用
use actix_web::{Result, HttpResponse, web, HttpRequest};
use crate::entity::{PageList};
pub async fn post(json: web::Json<PageList>) -> Result<HttpResponse> {
Ok(HttpResponse::Ok().body(format!("name:{}",json.into_inner().name)))
}
pub async fn get() -> Result<HttpResponse> {
Ok(HttpResponse::Ok().body("請求成功!"))
}
entity 層
記得創(chuàng)建 mod.rs ,并在其中 添加entity
該mod需要在main.rs中 引用
use serde::{Deserialize, Serialize};
# [derive(Serialize,Deserialize)]
pub struct PageList {
pub name: String,
}
有了這個基本的網(wǎng)絡(luò)架構(gòu),就可以構(gòu)建自己的項目了。
可按自己喜好進行劃分代碼結(jié)構(gòu)。
看到這里了,給個免費的贊呀。