#swagger #actix-web #openapi #codegen #actix

swagg

用于actix-web框架的swagger文件代码生成器

3个版本 (重大更新)

0.3.0 2020年5月13日
0.2.0 2020年3月30日
0.1.0 2020年3月30日

#67 in #swagger

Download history 1/week @ 2024-03-03 7/week @ 2024-03-10 1/week @ 2024-03-17 40/week @ 2024-03-31 1/week @ 2024-04-07 4/week @ 2024-04-21 1/week @ 2024-05-26 134/week @ 2024-06-09 8/week @ 2024-06-16

每月143次下载
cargo-swagg中使用

MIT许可证

120KB
3K SLoC

actix swagger

使用方法

目前不适用于生产使用

# Add cargo command to simplify usage
cargo install cargo-swagg

# Add support library to your project (via cargo-edit or manual)
cargo add actix-swagger

# Generate your code with cargo subcommand
cargo swagg ./openapi.yaml --out-file ./src/api.rs

# Format file after
rustfmt ./src/api.rs

开发

它使用insta进行快照测试。

安装cargo-insta以获得更好的审查体验。

成员

  • cargo-actix — 支持库,包含名为Answer的类型化响应以及swagg中支持的定制MethodContentType
  • swagg — 将openapi3 (yaml|json)规范转换为rust代码的库
  • cargo-swagg — 与swagg相同,但用于命令行界面
  • demo — 检查生成的代码是否可编译

示例

# to convert ./demo/openapi.yaml to ./demo/src/lib.rs
# format ./demo/src/lib.rs
# and check just run
cargo install cargo-make
cargo make

依赖关系

~4.5–6.5MB
~118K SLoC