Compartilhar via


Habilitar recursos condicionais com um filtro personalizado em um aplicativo JavaScript

Os sinalizadores de recursos podem usar filtros de recursos para habilitar os recursos condicionalmente. Para saber mais sobre filtros de recursos, consulte Habilitar recursos condicionais com filtros de recursos.

O exemplo usado neste guia é baseado no aplicativo Node.js apresentado no início rápido de gerenciamento de recursos. Antes de continuar, conclua o guia de início rápido para criar um aplicativo Node.js com um sinalizador de recursos Beta. Depois de concluído, você deve adicionar um filtro de recurso personalizado ao sinalizador de recurso Beta no repositório de Configuração de Aplicativos.

Neste artigo, você aprenderá como implementar um filtro de recursos personalizado e usar o filtro de recursos para habilitar recursos condicionalmente. Estamos usando o aplicativo de console Node.js como exemplo, mas você também pode usar o filtro de recursos personalizado em outros aplicativos JavaScript.

Pré-requisitos

Implementar um filtro de recurso personalizado

Você adicionou um filtro de recurso personalizado chamado Random com um parâmetro Percentage para o sinalizador de recurso Beta nos pré-requisitos. Em seguida, implemente o filtro de recursos para habilitar o sinalizador de recursos Beta com base na chance definida pelo parâmetro Porcentagem.

  1. Abra o arquivo app.js e adicione o RandomFilter com o código a seguir.

    class RandomFilter {
        name = "Random";
        evaluate(context) {
            const percentage = context.parameters.Percentage;
            const randomNumber = Math.random() * 100;
            return randomNumber <= percentage;
        }
    }
    

    Você adicionou classe RandomFilter que possui um único método chamado evaluate, que é chamado sempre que um sinalizador de recursos é avaliado. Em evaluate, um filtro de recurso habilita um sinalizador de recurso retornando true.

    Você definiu o nome de RandomFilter para Aleatório, que corresponde ao nome do filtro configurado no sinalizador de recursos Beta na Configuração de Aplicativos do Azure.

  2. Registre o RandomFilter ao criar o FeatureManager.

    const fm = new FeatureManager(ffProvider, {customFilters: [new RandomFilter()]});
    

Filtro de recurso em ação

Quando você executar o aplicativo, o provedor de configuração carregará o sinalizador de recursos Beta da Configuração de Aplicativos do Azure. O resultado do método isEnabled("Beta") será impresso no console. Como o RandomFilter é implementado e usado pelo sinalizador de recursos Beta, o resultado será True 50% do tempo e False os outros 50% do tempo.

A execução do aplicativo mostrará que o sinalizador de recurso Beta às vezes está habilitado e às vezes não.

Beta is enabled: true
Beta is enabled: false
Beta is enabled: false
Beta is enabled: true
Beta is enabled: true
Beta is enabled: false
Beta is enabled: false
Beta is enabled: false
Beta is enabled: true
Beta is enabled: true

Próximas etapas

Para saber mais sobre os filtros de recursos internos, prossiga para os documentos a seguir.