Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Ler array dentro do subscribe

Boa tarde,

Estou criando meu próprio aplicativo baseado nas aulas. Crie minha própria API em PHP que retorna no serviço um array (JSON) com um único usuario.

O método abaixo funciona, mas sempre com sucesso, pois, quando o usuário é digitado incorretamente retorna um array vazio.

No subscribe eu consigo verificar se esse array está vazio e dar um alert?

efetuaLogin(){
    this._servicos.autenticarUsuario(this.usuarioLogin, this.senha)
        .subscribe(
          (usuario: Usuario)=>{
            console.log(usuario);
            this.navCtrl.setRoot(HomePage);
          },
          ()=>{
            this._alertCtrl.create({
              title: 'Falha no login',
              subTitle: 'Usuario ou senha incorretos! Verifique!',
              buttons: [{text: 'Ok'}]
            }).present();
          }
        );
  }

Obrigada.

3 respostas
solução!

Boa tarde, Camila! Como vai?

A melhor solução nesse seu caso é fazer uma modificação na sua API de modo que quando o login estiver incorreto seja retornado uma status HTTP coerente (como o 403, por exemplo) e não um array vazio. Inclusive, essa foi a estratégia escolhida durante a construção da API que foi utilizada durante o curso.

Pegou a ideia? Qualquer coisa é só falar!

E o curso, o que está achando? Espero que esteja curtindo e aproveitando ao máximo o conteúdo!

Grande abraço e bons estudos, minha aluna!

Boa noite Gabriel,

Entendi, vou tentar fazer a alteração na API do PHP. Muito obrigada. O curso está maravilhoso, espero que tenha uma continuação ou tenha Ionic 4.

Mto bem, Camila! Qualquer dúvida é só mandar aqui no fórum!

Obrigado pelo feedback! Eu estou de olho no Ionic 4 que está em beta e assim que a versão for lançada oficialmente prepararei cursos novos!

Grande abraço e bons estudos!