gan*_*rty 3 javascript reactjs launchdarkly feature-flags
我正在使用 LaunchDarkly 进行功能标志管理,但我不知道从哪里获取当前用户的密钥。以下是其 React SDK 的 LD 文档中的示例:
import { withLDProvider } from 'launchdarkly-react-client-sdk';
export default withLDProvider({
clientSideID: 'your-client-side-id',
user: {
"key": "aa0ceb",
"name": "Grace Hopper",
"email": "gracehopper@example.com"
},
options: { /* ... */ }
})(YourApp);
Run Code Online (Sandbox Code Playgroud)
我如何得到这个key?键 和 和有什么不一样clientSideID?
LaunchDarkly 文档对于使用此工具所需的各种键有点令人困惑。
SDK密钥
这clientSideID是 SDK 密钥(客户端)。您可以从 LaunchDarkly Web 界面获取它。对于项目中的整个环境来说都是相同的,因此如果您使用React SDK或JS SDK,那么对于每个客户端来说都是相同的。
要获取它,请转至app.launchdarkly.com/YOUR_PROJECT,单击右上角的搜索图标。您将看到带有按钮的提示。您需要点击按钮Copy SDK key for the current development=> Client-side ID。请注意,如果您有dev环境和prod环境,它们的密钥将会不同。或者,您可以转到Account settings->Projects查看所有 SDK 密钥。
访问令牌
如果您不使用 SDK 但使用 REST API,则需要访问令牌。您可以通过转到Account settings->从 LaunchDarkly Web 界面获取它Authorization。您可以拥有多个访问令牌。
用户密钥
用户密钥唯一标识您的应用程序的用户。您负责生成它。根据文档,无法在 LaunchDarkly 界面中预先创建用户。相反,当您提供新的用户密钥时,LaunchDarkly 会动态注册用户。
对于应用程序的不同注册用户,用户密钥是不同的。由您决定使用什么作为用户唯一密钥,但您负责将其存储在数据库中并始终为同一用户提供相同的密钥。
当用户登录时,您需要初始化LaunchDarkly SDK并提供相应的密钥。
在反应中:
import { withLDProvider } from 'launchdarkly-react-client-sdk';
export default withLDProvider({
clientSideID: 'your-client-side-id',
user: {
"key": getCurrentUser().id,
"name": getCurrentUser().name,
"email": getCurrentUser().email
},
options: { /* ... */ }
})(YourApp);
Run Code Online (Sandbox Code Playgroud)
在纯 JavaScript 中:
const user = {
"key": getCurrentUser().id,
"name": getCurrentUser().name,
"email": getCurrentUser().email
};
const ldclient = LDClient.initialize('YOUR_CLIENT_SIDE_SDK', user, options = {
allAttributesPrivate: true
});
Run Code Online (Sandbox Code Playgroud)
这getCurrentUser()是获取应用程序经过身份验证的用户详细信息的函数。
当用户注销时,请确保该用户的密钥不可用。LaunchDarkly 的文档中描述了对任何匿名用户的跟踪,可以为此使用不同的策略。管理匿名用户的最简单方法是不发送用户密钥。
| 归档时间: |
|
| 查看次数: |
5456 次 |
| 最近记录: |