Renew authentication token with javascript

1

I have the JWT class but I can not renew it. How do I renew this token when the registration is done? I already have the token in sessionStorage called the token with the key.

Class:

function parseJwt (token)
{
  var base64Url = token.split('.')[1];
  var base64 = base64Url.replace('-', '+').replace('_', '/');
  var jwt = JSON.parse(window.atob(base64));

  Object.keys(jwt.data).forEach(function (key, value)
  {
    var value = jwt.data[key];
    sessionStorage.setItem(key, value);
  });
};

$('.btn-adicionar-endereco').click(function (e)
{
  e.preventDefault();
  var obj = new Object();
  var arrayObj = new Array();
  var mensagemsucesso = "Dados inseridos com sucesso";
  obj.idcliente = sessionStorage.getItem("cliente_id");
  obj.cependereco = $('.cependereco').val();
  obj.logradouroendereco = $('.logradouroendereco').val();
  obj.numeroendereco = $('.numeroendereco').val();
  obj.complementoendereco = $('.complementoendereco').val();
  obj.estadoendereco = $('.estadoendereco').val();
  obj.cidadeendereco = $('.cidadeendereco').val();
  obj.bairroendereco = $('.bairroendereco').val();

  if (obj.cependereco == '')
  {
    alert('O cep é obrigatório');
    return false;
  }
  else if (obj.logradouroendereco == '')
  {
    alert('O Logradouro é obrigatório');
    return false;
  }
  else if (obj.numeroendereco == '')
  {
    alert('O número é obrigatório');
    return false;
  }
  else if (obj.estadoendereco == '')
  {
    alert('Selecione um estado');
    return false;
  }
  else if (obj.cidadeendereco == '')
  {
    alert('Selecione uma cidade');
    return false;
  }
  else
  {
    arrayObj.push(obj);
    enderecoArray = JSON.stringify(arrayObj);

    $.ajax(
      {
        url: urlBase + "cliente/endereco",
        //  url: 'https://api.clouddelivery.com.br/store/cliente/endereco',
        method: 'POST',
        dataType: 'json',
        data: JSON.stringify(
          {
            cliente_id: obj.idcliente,
            bairro_id: obj.bairroendereco,
            logradouro: obj.logradouroendereco,
            numero: obj.numeroendereco,
            referencia: obj.complementoendereco,
            complemento: obj.complementoendereco,
            cep: obj.cependereco,
          }
        ),
        success: function(data)
        {
          // array objeto e session storage do site
          sessionStorage.setItem('dadosendereco', enderecoArray);
          $(".bg-success").html(mensagemsucesso);
          $(".bg-success").css('display', 'block');
          alert('Endereço salvo com sucesso');
          renovarToken();
          $(location).attr('href', 'perfil.php');
        },
        error: function(data)
        {
          console.log("Erro. Não foi possível realizar o cadastro por endereço");
        }
      });
    }
  });

//FUNÇÃO RENOVAR O TOKEN:
function renovarToken ()
{
    var id_token = sessionStorage.token;
    var verificatoken = "";
    $.ajax({
      url: urlBase + "autenticacao",
      method: 'GET',
      dataType: 'json',
      global: false,

      success: function(data)
      {
        console.log(data);
        /*  verificatoken = parseJwt(data);
        if (verificatoken)
        {
        alert('Token autenticado com sucesso');
      }
      else
      {
      alert('Token não autenticado');
    }*/
  },
  error: function(XMLHttpRequest, textStatus, errorThrown)
  {
    alert("Status do Servidor: " + textStatus);
    alert("Erro do Servidor: " + errorThrown);
  }
});
}

// RENOVAR TOKEN INIT
function renovarTokenInit()
{
  setTimeout(function ()
  {
    renovarToken();

    setInterval(function ()
    {
      renovarToken();
    }, 600000);
  }, 5000);
}
    
asked by anonymous 30.08.2017 / 20:48

0 answers