gpt4 book ai didi

postgresql - 如何在Rust上使用Actix创建POST方法?

转载 作者:行者123 更新时间:2023-12-03 11:45:09 24 4
gpt4 key购买 nike

我正在研究一种将微服务从Ruby移植到Rust的方法。
我选择的框架是Actix(但是其他任何人都可以毫无问题地工作)。
现在,我试图了解如何创建一个POST方法,该方法接收两个JSON作为输入。
这两个JSON具有两个完全不同的结构,并且该结构内可能具有不同的对象(JSON对象),以便稍后存储在两个PostgreSQL JSONB字段中。
关于如何构造函数和相关结构的任何提示?我以为可以以String形式接收它,但是我不确定它是否正确。

最佳答案

这很容易。只需对两种类型的数据使用具有常规字段的结构和两个单独的结构声明即可。

 struct FirstT {}
struct SecondT {}

#[derive(Serialize, Deserialize,Debug)]
struct PostData {
first_t: FirstT,
second_t: SecondT
}



async fn submit(data: web::Json<PostData>) -> HttpResponse {
//use data.first_t data.second_t
}

#[actix_rt::main]
async fn main() -> std::io::Result<()> {

HttpServer::new(|| {
App::new()
.data(web::JsonConfig::default().limit(4096))
.service(web::resource("/submit").route(web::post().to(submit)))
})
.bind("127.0.0.1:8000")?
.run()
.await
}

关于postgresql - 如何在Rust上使用Actix创建POST方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62934019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com