为结构体生成一个`config`方法,调用该方法可以读取配置文件中的属性
使用方式
```rust
#[derive(Debug, Deserialize, Configuration)]
#[properties(prefix = "push.file", file = "application.yml")]
```
`#[properties]`可以配置的属性
- prefix: 读取配置文件的前缀
- file: 配置文件的路径(可以配置多个file属性)
- http: 配置http属性(可以配置多个http属性)
+ url: http的url
+ method: 请求方法(只支持get和post两种, 默认是get)
+ format: 返回的字符串的格式(支持 toml、json、yaml、yml、json5、ini、ron)
- environment: 是否从环境变量中读取,默认为true
> 优先级: http > environment > file
示例
```rust
#[derive(Debug, Deserialize, Configuration)]
#[properties(
prefix = "push.file",
file = "application.toml",
http(url = "http://127.0.0.1:8080/toml", format = "toml"),
environment = true
)]
#[serde(rename_all(deserialize = "camelCase"))]
struct PushFile {
enable: u8,
app_id: String,
app_key: String,
master_secret: String,
package_name: String,
}
let config = PushFile::config();
```