1个稳定版本
1.0.0 | 2023年5月3日 |
---|
#478 在 HTTP客户端
29 每月下载量
在 3 个库(2 个直接) 中使用
175KB
3.5K SLoC
ecli-server-codegen的Rust API
ecli-server提供的RESTFul API
概述
此客户端/服务器是由 [openapi-generator] (https://openapi-generator.tech) 项目生成的。通过使用远程服务器的 OpenAPI-Spec,您可以轻松生成服务器存根。
要了解如何将其作为自己的项目,请看这里
- API版本:1.0.0
- 构建日期:2023-04-28T06:24:47.374332051Z[Etc/UTC]
此自动生成的项目定义了一个名为 ecli-server-codegen
的API crate,它包含
- 一个定义Rust中API的
Api
特征。 - 表示底层数据模型的数据类型。
- 一个实现
Api
并为每个操作发出HTTP请求的Client
类型。 - 一个路由器,它接受HTTP请求并为每个操作调用适当的
Api
方法。
它还包括一个示例服务器和客户端,它们使用 ecli-server-codegen
- 示例服务器使用
ecli-server-codegen
路由器启动Web服务器,并提供了对每个操作返回失败的简单实现。 - 示例客户端提供了一个CLI,允许您通过在命令行中传递适当的参数来调用
ecli-server-codegen
客户端的任何单个操作。
您可以将示例服务器和客户端作为您自己的代码的基础。有关实现服务器的更多详细信息,请参阅下面的实现服务器。
示例
使用以下命令运行示例
cargo run --example <example-name>
要向示例传递参数,请将其放在 --
之后,例如
cargo run --example client -- --help
运行示例服务器
要运行服务器,请按照以下简单步骤操作
cargo run --example server
运行示例客户端
要运行客户端,请按照以下简单步骤之一操作
cargo run --example client GetTaskList
HTTPS
可以通过传递标志 --https
在HTTPS模式下运行示例,例如
cargo run --example server -- --https
这将使用示例目录中的密钥/证书。请注意,服务器链使用 CN=localhost
签名。
使用生成的库
生成的库有一些可选功能,可以通过Cargo激活。
服务器
- 默认启用,并基于hyper创建服务器实现的基本框架
- 要创建服务器堆栈,您需要提供一个API trait的实现来提供服务器功能。
客户端
- 默认启用,并基于hyper创建客户端实现的基本框架
- 构建的客户端通过进行远程API调用来实现API trait。
转换
- 默认禁用,并为模型创建额外的derives,允许在结构相似的类型对象之间进行“transmogrification”。
有关如何在您的Cargo.toml
中使用特性的说明,请参阅https://doc.rust-lang.net.cn/cargo/reference/manifest.html#the-features-section。
API端点文档
所有URI均相对于http://localhost:8527
方法 | HTTP请求 | 描述 |
---|---|---|
getTaskList | GET /task | 获取运行任务列表 |
getTaskLogByID | POST /log | 获取日志 |
pauseTaskByID | POST /pause | 通过id暂停任务 |
resumeTaskByID | POST /resume | 通过id恢复任务 |
startTask | POST /task | 启动新任务 |
stopTaskByID | POST /stop | 通过id停止任务 |
模型文档
- GeneralError
- GetTaskLogRequest
- GetTaskLogResponseInner
- GetTaskLogResponseInnerLog
- LogType
- ProgramType
- SimpleIdRequest
- StartTask200Response
- StartTaskRequest
- TaskListResponse
- TaskListResponseTasksInner
- TaskStatus
授权文档
端点不需要授权。
作者
依赖关系
~9–21MB
~311K SLoC