Como implementar "Não Contém" ou Filtro Negativo no Requestly

Como implementar "Não Contém" ou Filtro Negativo no Requestly

estou usandoExtensão solicitada para Chrome e Firefoxpara configurar redirecionamentos. Tenho um caso de uso em que desejo mudar o host de, digamos, www.a.com para www.b.com, exceto quando www.a.com tiver um caminho específico (por exemplo, www.a.com/do_not_switch)

Eu sei que o Requestly suportaCorrespondências Regex e WildCardmas não vejo uma opção para fornecer um filtro negativo - algo como Não contém.

Precisa de ajuda para alcançar este caso de uso. Aqui está o exemplo

Redirecionar https://gsd.zgjx.zwa.com/* -->https://asc.zxc.com/*

exceto https://gsd.zgjx.zwa.com/gsd/translation/...

PS: Postar esta pergunta em nome de um usuário, pois a solução para este problema é genérica e será aplicável/útil para outros usuários no futuro

Responder1

Requestly não oferece suporte a filtro negativo (por exemplo, Não contém), mas você pode usar um truque simples para resolver esse caso de uso.

Resumo

Eu resolvi e criei a regra para você. Por favor, siga estas etapas

  1. InstalarSolicitadamente
  2. Abrirhttps://app.requestly.in/rules/#sharedList/1566298072114-Negative-Filter-example-support-request
  3. Clique no Import Listbotão no canto superior direito

Detalhes

Etapa 1 – Altere o nome do host para outro nome quando o URL corresponder à sua condição de exceção

URL Matches (WildCard) https://gsd.zgjx.zwa.com/gsd/translation/*
Destination https://www.dummyhost.com/gsd/translation/$1

Passo 2 - Defina um par genérico para configurar o Redirecionamento

No próximo par, adicione a Lógica de Redirecionamento genericamente para todos os caminhos. Observe que isso não se aplicará ao seu caminho de exceção porque o nome do host já foi alterado no primeiro par.

URL Matches (WildCard) https://gsd.zgjx.zwa.com/*
Destination https://asc.zxc.com/$1

Passo 3 – Reverter o nome de host fictício para o original

URL Matches (Wildcard) https://www.dummyhost.com/gsd/translation/*
https://gsd.zgjx.zwa.com/gsd/translation/$1

Aqui está uma captura de tela para ajudá-lo com o visual

insira a descrição da imagem aqui

Deixe-me saber se não funcionar para você.

Responder2

Para resolver isso, usamos a afirmação antecipada negativa RegEx (?!...). Apenas um par é necessário.

Já criei a regra.Para utilizá-lo, basta abrir o link, clicar no Import to My Rulesbotão no canto superior direito e testar.

Como alternativa, você pode criar a regra manualmente:

  1. Crie uma nova regra.

  2. Na If requestseção, escolha Matches (RegEx)no menu suspenso do operador.

  3. Cole este código RegEx no campo:

    /^https:\/\/gsd\.zgjx\.zwa\.com(?!\/gsd\/translation)/
    

    A parte mais importante é aquele bit da lista \.com(?!\/gsd\/translation). Está dizendo que se .comfornãoseguido por /gsd/translation, então o URL corresponde.

    Aqui está uma explicação passo a passo do RegEx.

  4. Na Redirects toseção, cole isso em seu campo.

    https://asc.zxc.com/
    
  5. Sua regra deve ser semelhanteesse.

  6. Salve e teste sua regra.

informação relacionada