2 个版本

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

240配置

Download history • Rust 包仓库 191/week @ 2024-08-05 • Rust 包仓库 23/week @ 2024-08-12 • Rust 包仓库

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