Capturar Token para validação

Olá a todos,

Estou tentando fazer uma requisição HTTP para pegar o token da API e após armazena-lo em uma variável, fazer outra requisição com essa variável para renovar o token já armazenado na variável.

O que preciso é gerar um script para pegar o token e após isso fazer outra requisição para renova-lo.

Tendo o intuito de toda requisição feita ser automaticamente gerado um token e o mesmo renova-lo.

A resposta que recebo da requisição é a seguinte:

“parametros”: [

    {

        "chave": "PeriodoMinimoAtendimento",

        "valor": "60",

        "externo": true

    },

    {

        "chave": "CodigosAssuntoHistoricoPermitidos",

        "valor": "51,391,11,21,31,41,51,61,71,81,91,111,121",

        "externo": true

    },

    {

        "chave": "MensagemTrocaFormaPagamento",

        "valor": "A forma de pagamento foi trocada...",

        "externo": true

    },

    {

        "chave": "MensagemInclusaoOrdemServico",

        "valor": "Dependendo do serviço poderá haver cobrança.",

        "externo": true

    },

    {

        "chave": "PermitirDebitoEmNaoTitular",

        "valor": "true",

        "externo": true

    },

    {

        "chave": "SituacoesContratoOrdemServico",

        "valor": "2,7",

        "externo": true

    },

    {

        "chave": "SituacoesContratoFormaPagamento",

        "valor": "2,7",

        "externo": true

    },

    {

        "chave": "PermitirTrocarFormaPagamento",

        "valor": "true",

        "externo": true

    },

    {

        "chave": "SituacoesPermitidasLiberacaoConfianca",

        "valor": "4,7",

        "externo": true

    },

    {

        "chave": "PermitirLiberacaoEmConfianca",

        "valor": "true",

        "externo": true

    },

    {

        "chave": "PermitirTrocarFormaPagamentoMesmoBanco",

        "valor": "true",

        "externo": true

    },

    {

        "chave": "MensagemErroTrocarFormaPagamentoMesmoBanco",

        "valor": "Só é possível trocar a forma de pagamento para mesmo banco atráves do suporte.",

        "externo": true

    },

    {

        "chave": "PermitirTrocarModoEnvioFatura",

        "valor": "true",

        "externo": true

    },

    {

        "chave": "ExibirBotaoNovoAssinante",

        "valor": "false",

        "externo": true

    },

    {

        "chave": "UrlPortalNovoAssinante",

        "valor": "http://www.google.com.br/",

        "externo": true

    },

    {

        "chave": "MinimoDiasAvaliacao",

        "valor": "7",

        "externo": true

    },

    {

        "chave": "MinimoVezesInicializacaoParaAvaliacao",

        "valor": "7",

        "externo": true

    },

    {

        "chave": "AppHashString",

        "valor": "A2X3ckgC5rQ",

        "externo": true

    },

    {

        "chave": "PodeEfetuarUpgradeProgramacao",

        "valor": "true",

        "externo": true

    },

    {

        "chave": "UrlPoliticaPrivacidade",

        "valor": "https://s3-sa-east-1.amazonaws.com/central-assinante-downloads/politicas/homologacao/privacy-policy.html",

        "externo": true

    },

    {

        "chave": "IdsAssuntoHistoricoTesteEquipamento",

        "valor": "11,51,161,491,501,511,801,811,821,841,851,861,871,921,931,941,971,1131",

        "externo": true

    },

    {

        "chave": "CorFundoMeusDados",

        "valor": "#ED1B24",

        "externo": true

    },

    {

        "chave": "IconeMeusDados",

        "valor": "f2c2",

        "externo": true

    },

    {

        "chave": "CorFundoFinanceiro",

        "valor": "#FFD502",

        "externo": true

    },

    {

        "chave": "IconeFinanceiro",

        "valor": "f0d6",

        "externo": true

    },

    {

        "chave": "CorFundoLiberacaoConfianca",

        "valor": "#2196F3",

        "externo": true

    },

    {

        "chave": "IconeLiberacaoConfianca",

        "valor": "f519",

        "externo": true

    },

    {

        "chave": "CorFundoLinksUteis",

        "valor": "#34B559",

        "externo": true

    },

    {

        "chave": "CodigoGrupoHistoricoAgendamentoServicos",

        "valor": "71,40011",

        "externo": true

    },

    {

        "chave": "UrlLogoEmpresa",

        "valor": "http://177.23.250.198/CentralAssinante/Content/img/logo-top.png",

        "externo": true

    },

    {

        "chave": "IconeLinksUteis",

        "valor": "f35d",

        "externo": true

    },

    {

        "chave": "CorFundoOrdemServico",

        "valor": "#E63B97",

        "externo": true

    },

    {

        "chave": "IconeOrdemServico",

        "valor": "f509",

        "externo": true

    },

    {

        "chave": "CorFundoFormaPagamento",

        "valor": "#38BFEF",

        "externo": true

    },

    {

        "chave": "IconeFormaPagamento",

        "valor": "f09d",

        "externo": true

    },

    {

        "chave": "CorFundoUpgradeProgramacao",

        "valor": "#3F51B5",

        "externo": true

    },

    {

        "chave": "IconeUpgradeProgramacao",

        "valor": "f093",

        "externo": true

    },

    {

        "chave": "PermitirAgendamentoOrdemServico",

        "valor": "true",

        "externo": true

    }

],

"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJBcHBEZXBsb3lJZCI6MTM2LCJDb250cmF0b0lkIjoxOTgsIlBlcmZpbElkIjozNTUsIlBlcmZpbE5vbWUiOiJTdXBlclVzZXIgQ2VudHJhbEFzc2luYW50ZSBbVXJzb2Z0XSIsIlVzdWFyaW9JZCI6MzY0NywiVXN1YXJpb05vbWUiOiJJbnRlZ3Jhw6fDo28gVXJzb2Z0IENlbnRyYWwgZG8gQXNzaW5hbnRlIiwiVGVtYSI6Im1hdGVyaWFsIiwiTG9naW4iOiJpbnRlZ3JhY2FvX2NlbnRyYWxhc3NpbmFudGVAdXJzb2Z0LmNvbS5iciIsIkNvbmNlc3NhbyI6IlwvRGF0ZSgxNjE1ODI4Nzg4NTE4KVwvIiwiVG9rZW5TdHJpbmciOm51bGwsIkNvbnRyYXRvcyI6WzE5OF19.jxuFO1N75NwoZEUBkTBjVDqx_ZS5Z6whAkdezRQF7aw",

Preciso transformar o token em uma variável para realizar outra requisição onde irei renovar, Acredito que para isso seja necessário gerar um script. Poderiam me ajudar ?

1 Curtida

Se eu não estou enganado, você só precisa passar a variável de resposta da sua requisição como entrada no Script, e fazer o seguinte código:

 function run(resposta) {
   var resposta = json.parse(resposta); // tratar a resposta como JSON
   var token = resposta.token; // navegar pelo seu JSON até o seu Token
   return token;
}

é basicamente o exemplo que já tem pronto (comentado) quando você abre a tela de edição de script no builder. Eu to sem acesso ao builder no momento, mas faz um teste nisso que mandei acima…

2 Curtidas

Olá @GabrielPetrone, obrigado pela resposta mas ainda continua apresentando um erro. Segue o mesmo.

1 Curtida

Vixe rapaz, é porque tem que estar escrito em maiúsculo ali a palavra JSON.

na segunda linha:
var resposta = JSON.parse(resposta);

Mas aqui, tem que validar se no seu retorno da API, o token está dentro da chave “token” ou se ela está em outro nível também. Não consegui validar isso pra você. Tenta dessa forma em maiúsculo, vamos ver…

1 Curtida

Olá @GabrielPetrone

Era isso mesmo. Agora está capturando apenas o token de que preciso. Muito obrigado.

1 Curtida

Este tópico foi fechado automaticamente 7 dias depois da úlima resposta. Novas respostas não são mais permitidas.