Firebase Functions - Emulators
Olá meus Unicórnios! 🦄✨
Aprendemos muitos nos tutoriais anteriores, mas não pode faltar uma forma de testar nossa aplicação Offline.
Para isto, o Firebase tem uma ferramenta chamada "Firebase Emulator".
Para este tutorial, iremos utilizar as funções e base criadas no tutorial anterior:
No CMD, execute o comando abaixo para instalar o Emulator:
npm install -g firebase-tools
Depois da instalação, abra o arquivo "firebase.json".
Iremos adicionar um novo elemento chamado "emulators" indicando as portas que iremos utilizar:
"emulators": {
"database": {
"host": "localhost",
"port": 9000
},
"functions": {
"host": "localhost",
"port": 5001
},
"ui": {
"enabled": true,
"host": "localhost",
"port": 4000
}
}
O arquivo completo deve ficar semelhante ao arquivo abaixo:
{
"functions": [
{
"source": "functions",
"codebase": "default",
"ignore": [
"node_modules",
".git",
"firebase-debug.log",
"firebase-debug.*.log",
"*.local"
]
}
],
"hosting": {
"rewrites": [
{
"source": "/helloworld/**",
"function": {
"functionId": "helloworld"
}
},{
"source": "/RegistraUsuario/**",
"function": {
"functionId": "RegistraUsuario"
}
},{
"source": "/BuscaUsuario/**",
"function": {
"functionId": "BuscaUsuario"
}
},{
"source": "/DeletaUsuario/**",
"function": {
"functionId": "DeletaUsuario"
}
},{
"source": "/ListaUsuarios/**",
"function": {
"functionId": "ListaUsuarios"
}
}
]
},
"emulators": {
"database": {
"host": "localhost",
"port": 9000
},
"functions": {
"host": "localhost",
"port": 5001
},
"ui": {
"enabled": true,
"host": "localhost",
"port": 4000
}
}
}
Estamos prontas para testar!
Execute o comando abaixo para iniciar o Emulador:
firebase emulators:start
Após o Emulator ser iniciado, o console ira indicar os endereços de cada recurso:
O console será acessado pela porta 4000:
http://localhost:4000
Nele temos acesso a todos os recursos que ativamos:
Observe que as funções são acionadas via:
http://127.0.0.1:5001/[PROJETO]/us-central1/
Exemplo de Chamada da Função "RegistraUsuario":
http://127.0.0.1:5001/testespaloma/us-central1/RegistraUsuario/
Se você precisar confirmar a url das funções, acesses "Functions emulator" no Console do Emulador:
Você deve ter observado que não temos emulador para o Google Task, o que impede que emulemos as tarefas de webhook.
No tutorial seguinte, iremos abordar uma alternativa totalmente funcional.
Por hoje é só, meus unicórnios! 🦄✨
Que a magia do arco-íris continue brilhando em suas vidas! Até mais! 🌈🌟