2个版本
0.1.2 | 2020年5月25日 |
---|---|
0.1.1 | 2019年4月6日 |
#1969 in Web编程
在 pca9956b 中使用
705KB
12K SLoC
pca9956b-api
pca9956b-api 是一个用于控制PCA9956B集成电路的HTTP RESTful API。此仓库包括
可以在 https://github.com/packom/pca9956b 找到适用于Linux的完整功能服务器实现。
下面的文本是由 openapi-generator 自动生成的。
Rust API for openapi_client
未提供描述(由Openapi Generator生成 https://github.com/openapitools/openapi-generator)
概述
此客户端/服务器由 [openapi-generator] (https://openapi-generator.tech) 项目生成。通过使用远程服务器上的 OpenAPI-Spec,您可以轻松地生成服务器存根。
要了解如何将其变成自己的,请查看这里
- API版本:0.1.2
- 构建日期:2020-05-25T09:11:52.903808ZEtc/UTC
此自动生成项目定义了一个API crate openapi_client
,其中包含
- 定义API的Rust中的
Api
trait。 - 表示底层数据模型的数据类型。
- 实现
Api
并为每个操作发出HTTP请求的Client
类型。 - 接受HTTP请求并调用每个操作的相应
Api
方法的路由器。
它还包含了一个示例服务器和客户端,它们使用 openapi_client
- 示例服务器使用
openapi_client
路由器启动一个Web服务器,并为Api
提供一个简单的实现,该实现对于每个操作都返回失败。 - 示例客户端提供了一个命令行界面(CLI),允许您通过命令行传递适当的参数来调用
openapi_client
客户端的任何单个操作。
您可以将示例服务器和客户端作为您自己代码的基础。有关实现服务器的更多详细信息,请参阅下文。
示例
运行示例
cargo run --example <example-name>
要将参数传递给示例,请将它们放在 --
之后,例如
cargo run --example client -- --help
运行示例服务器
要运行服务器,请按照以下简单步骤操作
cargo run --example server
运行示例客户端
要运行客户端,请按照以下简单步骤之一操作
cargo run --example client ClearError
cargo run --example client GetAddrEnabled
cargo run --example client GetAddrInfo
cargo run --example client GetAddrValue
cargo run --example client GetApi
cargo run --example client GetConfig
cargo run --example client GetCurrent
cargo run --example client GetError
cargo run --example client GetErrors
cargo run --example client GetFreq
cargo run --example client GetGroup
cargo run --example client GetLedCurrent
cargo run --example client GetLedError
cargo run --example client GetLedInfo
cargo run --example client GetLedInfoAll
cargo run --example client GetLedPwm
cargo run --example client GetLedState
cargo run --example client GetOffset
cargo run --example client GetOutputChange
cargo run --example client GetOverTemp
cargo run --example client GetPwm
cargo run --example client GetSleep
cargo run --example client Reset
cargo run --example client SetAddrEnabled
cargo run --example client SetAddrValue
cargo run --example client SetCurrent
cargo run --example client SetFreq
cargo run --example client SetLedCurrent
cargo run --example client SetLedPwm
cargo run --example client SetOffset
cargo run --example client SetPwm
cargo run --example client SetSleep
HTTPS
您可以通过传递标志 --https
在 HTTPS 模式下运行示例,例如
cargo run --example server -- --https
这将从示例目录中使用的密钥/证书。请注意,服务器链已由 CN=localhost
签名。
使用生成的库
生成的库有一些可选功能,可以通过 Cargo 激活。
服务器
- 默认情况下启用,并基于 hyper 创建服务器实现的基本框架
- 要创建服务器堆栈,您需要提供一个 API 特质的实现,以提供服务器功能。
客户端
- 默认情况下启用,并基于 hyper 创建客户端实现的基本框架
- 构建的客户端通过远程 API 调用来实现 API 特质。
转换
- 默认情况下禁用,并为模型创建额外的 derive,以允许在结构相似的类型对象之间进行“变形”。
有关如何在 Cargo.toml
中使用功能的说明,请参阅 https://doc.rust-lang.net.cn/cargo/reference/manifest.html#the-features-section。
API 端点文档
所有 URI 都是相对于 https://127.0.0.1
方法 | HTTP 请求 | 描述 |
---|---|---|
clear_error | POST /pca9956b/{busId}/{addr}/error/clear | |
get_addr_enabled | GET /pca9956b/{busId}/{addr}/addr/{num}/enabled | |
get_addr_info | GET /pca9956b/{busId}/{addr}/addr/{num} | |
get_addr_value | GET /pca9956b/{busId}/{addr}/addr/{num}/addr | |
get_api | GET /pca9956b/api | |
get_config | GET /pca9956b/{busId}/{addr}/config | |
get_current | GET /pca9956b/{busId}/{addr}/current | |
get_error | GET /pca9956b/{busId}/{addr}/error | |
get_errors | POST /pca9956b/{busId}/{addr}/errors | |
get_freq | GET /pca9956b/{busId}/{addr}/freq | |
get_group | GET /pca9956b/{busId}/{addr}/group | |
get_led_current | GET /pca9956b/{busId}/{addr}/led/{led}/current | |
get_led_error | GET /pca9956b/{busId}/{addr}/led/{led}/error | |
get_led_info | GET /pca9956b/{busId}/{addr}/led/{led} | |
get_led_info_all | GET /pca9956b/{busId}/{addr}/led | |
get_led_pwm | GET /pca9956b/{busId}/{addr}/led/{led}/pwm | |
get_led_state | GET /pca9956b/{busId}/{addr}/led/{led}/state | |
get_offset | GET /pca9956b/{busId}/{addr}/offset | |
get_output_change | GET /pca9956b/{busId}/{addr}/outputChange | |
get_over_temp | GET /pca9956b/{busId}/{addr}/overTemp | |
get_pwm | GET /pca9956b/{busId}/{addr}/pwm | |
get_sleep | GET /pca9956b/{busId}/{addr}/sleep | |
reset | POST /pca9956b/{busId}/reset | |
set_addr_enabled | POST /pca9956b/{busId}/{addr}/addr/{num}/enabled/{enabled} | |
set_addr_value | POST /pca9956b/{busId}/{addr}/addr/{num}/addr/{addrVal} | |
set_config | POST /pca9956b/{busId}/{addr}/config | |
set_current | POST /pca9956b/{busId}/{addr}/current/{current} | |
set_freq | POST /pca9956b/{busId}/{addr}/freq/{freq} | |
设置组 | POST /pca9956b/{busId}/{addr}/group/{group} | |
设置LED电流 | POST /pca9956b/{busId}/{addr}/led/{led}/current/{current} | |
设置LED错误 | POST /pca9956b/{busId}/{addr}/led/{led}/error/{error} | |
设置LED信息 | POST /pca9956b/{busId}/{addr}/led/{led} | |
设置所有LED信息 | POST /pca9956b/{busId}/{addr}/led | |
设置LEDPWM | POST /pca9956b/{busId}/{addr}/led/{led}/pwm/{pwm} | |
设置LED状态 | POST /pca9956b/{busId}/{addr}/led/{led}/state/{state} | |
设置偏移量 | POST /pca9956b/{busId}/{addr}/offset/{offset} | |
设置输出变化 | POST /pca9956b/{busId}/{addr}/outputChange/{outputChange} | |
设置PWM | POST /pca9956b/{busId}/{addr}/pwm/{pwm} | |
设置睡眠 | POST /pca9956b/{busId}/{addr}/sleep/{sleep} |
模型文档
- 地址
- 地址启用
- 地址索引
- 地址信息
- API错误
- 错误请求
- 总线ID
- 配置
- 电流
- 错误
- 频率
- 组
- LED错误
- LED错误列表
- LED索引
- LED信息
- LED信息数组
- LED状态
- 偏移量
- 操作错误
- 输出变化
- 过温
- PWM
- 睡眠
- Yaml
授权文档
端点无需授权。
作者
依赖关系
~8–20MB
~288K SLoC