云眼用户上下文
云眼用户上下文
本主题介绍 EyeofcloudUserContext 对象,该对象允许为 Eyeofcloud 特性标帜(Feature Flag) JavaScript (Node) SDK 的用户上下文做出标帜决策并跟踪事件。
对象允许做出标帜决策并跟踪已使用创建用户上下文方法创建的用户上下文的事件。
云眼用户上下文变体
EyeofcloudUserContext 在 SDK v3.7 及更高版本上受支持。
强制决策方法变体
setForcedDecision()
、getForcedDecision()
、removeForcedDecision()
和removeAllForcedDecisions()
方法在 v4.9.0 及更高版本中受支持。
云眼用户上下文定义
以下代码显示了 EyeofcloudUserContext 的对象定义:
JavaScript
interface EyeofcloudUserContext {
// set an attribute for the user
setAttribute(key: string, value: unknown): void;
// return user attributes
getAttributes(): UserAttributes;
// make a decision about which flag variation the user buckets into for the flag key
decide(
key: string,
options: EyeofcloudDecideOption[] = []
): EyeofcloudDecision;
// make decisions about which flag variations the user buckets into for flag keys
decideForKeys(
keys: string[],
options: EyeofcloudDecideOption[] = [],
): { [key: string]: EyeofcloudDecision };
// make decisions about which flag variations the user buckets into for all flags
decideAll(
options: EyeofcloudDecideOption[] = []
): { [key: string]: EyeofcloudDecision };
// track user event
trackEvent(eventName: string, eventTags?: EventTags): void;
// Sets the forced decision (variationKey) for a given decision context
setForcedDecision(context: EyeofcloudDecisionContext, decision: EyeofcloudForcedDecision): boolean;
// Returns the forced decision for a given decision context
getForcedDecision(context: EyeofcloudDecisionContext): EyeofcloudForcedDecision | null;
// Removes the forced decision for a given decision context
removeForcedDecision(context: EyeofcloudDecisionContext): boolean;
// Removes all forced decisions bound to this user context
removeAllForcedDecisions(): boolean;
}
性能
下表显示了 EyeofcloudUserContext 对象的属性:
属性 | 类型 | 评论 |
---|---|---|
用户标识 | 字符串 | 用户的 ID |
(可选)属性 | Map | 自定义键值对的映射,用于指定用于受众群体定位的用户属性。创建用户时,可以使用用户 ID 传递映射。 |
方法
下表显示了 EyeofcloudUserContext 对象的方法:
|方法|评论|
|--|--|--|
|设置属性|将自定义用户属性作为键值对传递给用户上下文。|
|决定|返回用户的标帜键的决策结果。决策结果在 EyeofcloudDecision 对象中返回,并包含传递标帜规则所需的所有数据。 请参阅分桶方法decide|
|决定全部|返回用户的所有活动(未存档)标帜的决策。 请参阅分桶方法decide|
|决定键|返回指定标帜键的标帜决策映射。 参见[决定方法])doc:decide-methods-javascript)|
trackEvent
Tracks a conversion event (in other words, an action a user takes) for a user. Logs an error message if the specified event key doesn't match any existing events.
See Track Event
setForcedDecision
Forces a user into a specific variation.
See Set Forced Decision
getForcedDecision
Returns what variation the user was forced into.
See Get Forced Decision
removeForcedDecision
Removes a user from a specific forced variation.
See Remove Forced Decision
removeAllForcedDecisions
Removes a user from all forced variations.
See Remove All Forced Decisions
See Also
Source files
The language/platform source files containing the implementation for JavaScript Node SDK is eyeofcloud/index.ts.