这是我的问题,
我有一个带有名为“ UserActivationStrategy ”的自定义策略的功能开关。它所做的只是,它在Id字段中有一个硬编码值作为“用户” ,一个作为参数的“ IpAddress ”和一些逻辑在isActive(state,user)中返回真/假。
因此,要调用的策略是根据硬编码的Id确定的。这是我定义的 application.properties
CustomFeature = true
CustomFeature.strategy= user
CustomFeature.param.IpAddress= xx.xx.xxx
以上说明 ....UserActivationStrategy 是基于在策略中硬编码的 Id('user') 调用的。在 UserActivationStrategy 中,我正在验证 Ipaddress 并返回真/假。
那么,如果我需要对具有不同 IpAddress 的不同用户执行相同的逻辑呢?它像组合。某些用户有权访问某些 IpAddress。
我无法为每个用户或每个 IPAddress 创建功能开关。它将创建许多功能开关。
如果我在策略中添加用户和 IPAddress 作为参数。我最终在单一策略中创建了许多参数,这是不好的。
对此的任何解决方案表示赞赏。谢谢。