2 个版本

0.1.1 2024 年 8 月 8 日
0.1.0 2024 年 8 月 8 日

240配置

Download history 191/week @ 2024-08-05 23/week @ 2024-08-12

214 每月下载量

MIT 许可证

21KB
226

ConfigCat OpenFeature Provider for Rust

Build Status crates.io docs.rs

此仓库包含一个 OpenFeature 提供程序,允许 ConfigCatOpenFeature Rust SDK 一起使用。

安装

在您的项目目录中运行以下 Cargo 命令

cargo add configcat-openfeature-provider

或者将以下内容添加到您的 Cargo.toml

[dependencies]
configcat-openfeature-provider = "0.1"

用法

ConfigCatProvider 需要一个预先配置的 ConfigCat Rust SDK 客户端

use std::time::Duration;
use configcat::{Client, PollingMode};
use open_feature::OpenFeature;
use configcat_openfeature_provider::ConfigCatProvider;

#[tokio::main]
async fn main() {
    // Acquire an OpenFeature API instance.
    let mut api = OpenFeature::singleton_mut().await;

    // Configure the ConfigCat SDK.
    let configcat_client = Client::builder("<YOUR-CONFIGCAT-SDK-KEY>")
        .polling_mode(PollingMode::AutoPoll(Duration::from_secs(60)))
        .build()
        .unwrap();

    // Configure the provider.
    api.set_provider(ConfigCatProvider::new(configcat_client)).await;

    // Create a client.
    let client = api.create_client();

    // Evaluate a feature flag.
    let is_awesome_feature_enabled = client
        .get_bool_value("isAwesomeFeatureEnabled", None, None)
        .await
        .unwrap_or(false);
}

有关所有配置选项的更多信息,请参阅 Rust SDK 文档

示例

此仓库包含一个简单的 示例应用程序,您可以使用它来运行

cargo run --example print_eval

需要帮助?

https://configcat.com/support

贡献

欢迎贡献。有关更多信息,请阅读 贡献指南

关于 ConfigCat

ConfigCat 是一个功能标志和配置管理服务,它允许您将发布与部署分开。您可以在部署后使用 ConfigCat 仪表板 打开/关闭功能。ConfigCat 允许您根据地区、电子邮件或任何其他自定义用户属性来定位特定用户组。

ConfigCat 是一个 托管功能标志服务。管理前端、后端、移动和桌面应用程序中的功能开关。 LaunchDarkly 的替代方案。管理应用程序 + 功能标志 SDK。

依赖关系

~9–20MB
~302K SLoC