escrever na nuvem Firestore por meio das funções da nuvem não está funcionando

Matt123

Estou tentando gravar dados em nuvem firestore de funções de nuvem e não estou fazendo funcionar. Aqui está meu código em funções de nuvem:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
var express = require('express');
admin.initializeApp(functions.config().firebase);

const app = express();

let db = admin.firestore();

app.get('/helloworld', (req, res) => res.send('Hello World!'));

app.post('/signup', (req, res) => {


  var email = req.body.email;
  var username = req.body.username;
  var password = req.body.password;


  //creating document.  Here is where it isn't working

  let docRef = db.collection('UsersMain').doc('firstdoc');

    let data = {
    Email: '[email protected]',
    UserName: 'Matt'
  };

  let setDoc = docRef.set(data);

console.log(db);
  res.send('Login Complete');
});



const api1 = functions.https.onRequest(app);

module.exports = {api1};

e aqui estão minhas permissões de armazenamento de fogo:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
  }
}

Alguém pode dar uma olhada e me dizer o que estou fazendo de errado? Idealmente, um novo documento chamado 'firstdoc' seria criado e teria os dados de e-mail e nome de usuário nele. Obrigado!

Frank van Puffelen

A primeira coisa que vem à mente ao observar seu código é que você não está esperando docRef.set(data)a conclusão para enviar um resultado de volta ao chamador. Isso significa que o Cloud Functions pode eliminar seu ambiente antes que a gravação no Firestore seja concluída.

Para garantir que a gravação seja concluída, você só deve gravar um resultado na resposta depois que a gravação no banco de dados for concluída. Algo como:

docRef.set(data).then(() => {
  res.send('Login Complete');
})

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Problema no firestore durante a execução por meio da função de nuvem

Firebase firestore: as funções da nuvem não estão sendo implantadas corretamente

Firebase firestore: as funções da nuvem não estão sendo implantadas corretamente

O carimbo de data / hora do Firestore é convertido em mapa quando processado por meio da função de nuvem

Como mover um documento Firestore das funções da nuvem?

A função de mensagens em nuvem do Firestore não está funcionando corretamente

O incremento ServerValue da função de nuvem do firebase não está funcionando

por que salvar evento não está funcionando no código da nuvem?

funções de nuvem da firestore para obter valores agregados na coleção

A função de nuvem do Firebase não está funcionando?

Atualize o firestore nas funções da nuvem

firebase_tools não encontrado ao tentar remover a coleção Firestore das funções da nuvem

Autenticação http das funções da nuvem do Google

erro ao recuperar informações do firestore por meio de funções de nuvem

As funções de nuvem do Firebase não estão funcionando corretamente?

Por que as palavras de interrupção não estão sendo excluídas da nuvem de palavras ao usar a biblioteca de palavras de nuvem do Python?

Por que as palavras de interrupção não estão sendo excluídas da nuvem de palavras ao usar a biblioteca de palavras de nuvem do Python?

Como implementar a função SUM () do SQL na nuvem Firestore

Incremento do Firestore - função da nuvem invocada duas vezes

Como fazer com que as funções da nuvem não contornem as regras de segurança do firestore?

Como fazer com que as funções da nuvem não contornem as regras de segurança do firestore?

Conectando-se a nós de cluster por meio de funções de nuvem do Google

Lendo dados do armazenamento em nuvem por meio de funções em nuvem

Falha na função de análise da nuvem

a tarefa da nuvem do google não está enviando o corpo para a função da nuvem http

Tutorial do Rails Capítulo 1: o servidor rails não está funcionando na nuvem 9

Envio de dados do banco de dados firebase ao cliente por meio da função de nuvem

As mensagens não estão sendo reconhecidas nas funções da nuvem

a consulta de atualização não está funcionando no Heroku usando a linha de comando da nuvem 9