mirror of
https://github.com/actix/actix-extras.git
synced 2024-12-04 20:11:55 +01:00
48646d1bd3
* build(deps): update derive_more to v1.0 * chore: remove overspecified deps * chore: use from the derive module * chore: restore unrelated version reqs --------- Co-authored-by: Rob Ede <robjtede@icloud.com> |
||
---|---|---|
.. | ||
src | ||
Cargo.toml | ||
CHANGES.md | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md |
actix-protobuf
Protobuf payload extractor for Actix Web.
Documentation & Resources
- API Documentation
- Example Project
- Minimum Supported Rust Version (MSRV): 1.57
Example
use actix_protobuf::*;
use actix_web::*;
#[derive(Clone, PartialEq, Message)]
pub struct MyObj {
#[prost(int32, tag = "1")]
pub number: i32,
#[prost(string, tag = "2")]
pub name: String,
}
async fn index(msg: ProtoBuf<MyObj>) -> Result<HttpResponse> {
println!("model: {:?}", msg);
HttpResponse::Ok().protobuf(msg.0) // <- send response
}
See here for the complete example.
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.