1
resposta

Promise sempre aparece fulfilled.

Quando faço os passos iniciais onde só coloco o:

var consultaCEP = fetch('viacep.com.br/ws/01001000/json/')
console.log(consultaCEP);

A promise retorna o estado fulfilled e não rejected, como no vídeo. Gostaria de entender essa diferença de comportamento, se é relacionado a versões, métodos, etc. Porque acredito que isso gera mais erros no futuro.

Por exemplo, quando adiciona o código da próxima aula, também já não aparecem os mesmos resultados da professora, que seria o código:

var consultaCEP = fetch('https://viacep.com.br/ws/01001000/json/')

.then(response => response.json())

.then(r => {
    if(r.erro){
        throw Error("Esse cep não existe!");
    } else{
        console.log(r);
    }
})
.catch(erro => console.log(erro));

console.log(consultaCEP);
1 resposta

Oi, Lucas! Tudo bem?

Desculpa a demora por um retorno.

Quando não especificamos nenhum protocolo na URL passada para o fetch(), o navegador pode assumir o protocolo padrão do ambiente em que está sendo executado. Na maioria dos casos, o protocolo padrão será o HTTP.

No entanto, é recomendado sempre especificar o protocolo que deseja utilizar para evitar possíveis problemas de segurança e confusão. O protocolo HTTPS, utilizado no código da aula, é uma extensão do protocolo HTTP que adiciona uma camada de criptografia para proteger a comunicação entre o cliente e o servidor, protegendo as informações transmitidas.

Espero ter ajudado na compreensão!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software