Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

285
Visualizações
Función Firebase - terminado con código de estado: 204

Tengo una función de nube de base de fuego:

 const admin = require('firebase-admin'); const firebase_tools = require('firebase-tools'); const functions = require('firebase-functions'); admin.initializeApp(); exports.deleteUser = functions .runWith({ timeoutSeconds: 540, memory: '2GB' }) .https.onCall((data, context) => { const userId = context.auth.uid; var promises = []; // DELETE DATA var paths = ['users/' + userId, 'messages/' + userId, 'chat/' + userId, 'like/' + userId]; paths.forEach((path) => { promises.push( recursiveDelete(path).then( () => { return 'success'; } ).catch( (error) => { console.log('Error deleting user data: ', error); }) ); }); // DELETE FILES const bucket = admin.storage().bucket(); var image_paths = ["avatar/" + userId, "avatar2/" + userId, "avatar3/" + userId]; image_paths.forEach((path) => { promises.push( bucket.file(path).delete().then( () => { return 'success'; } ).catch( (error) => { console.log('Error deleting user data: ', error); }) ); }); // DELETE USER promises.push( admin.auth().deleteUser(userId) .then( () => { console.log('Successfully deleted user'); return true; }) .catch((error) => { console.log('Error deleting user:', error); }) ); return Promise.all(promises).then(() => { return true; }).catch(er => { console.error('...', er); }); }); function recursiveDelete(path, context) { return firebase_tools.firestore .delete(path, { project: process.env.GCLOUD_PROJECT, recursive: true, yes: true, token: functions.config().fb.token }) .then(() => { return { path: path } }).catch( (error) => { console.log('error: ', error); return error; }); } // [END recursive_delete_function]

Estoy tratando de ejecutar esta función localmente desde un archivo javascript:

 function deleteAccount(userId) { fetch( `https://us-central1-myappname.cloudfunctions.net/deleteUser/${userId}`, { method: "DELETE" } ); }

Pero estoy recibiendo un:

La ejecución de la función deleteUser tomó 1952 ms, terminó con el código de estado: 204

Aquí está la URL de mi función en la nube de firebase:

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Publicar una respuesta basada en mi comentario y los comentarios de los miembros de la comunidad anteriores para la visibilidad.

Según el comentario de stf_F, es una buena idea usar funciones invocables, ya que recuerda el estado y no es necesario pasar ningún UID para eliminar al usuario. O también puede delcare como se menciona en este documento .

 const text = data.text; // Authentication / user information is automatically added to the request. const uid = context.auth.uid; const name = context.auth.token.name || null; const picture = context.auth.token.picture || null; const email = context.auth.token.email || null;index.js

Y puede verificar cómo eliminar usando callable en el siguiente documento .

Sin embargo, si prefiere usar fetch y si desea saber cómo obtener los datos en JSON y cómo guardarlos en HTML. Puedes consultar este artículo. Puede usar el siguiente ejemplo sobre cómo estructurar su recuperación

 fetch(functionEndpoint) .then(res => res.json()) .then(function(data) { /** DO STUFF WITH YOUR DATA **/ }).catch(function(error) { console.log("Err is:" + err); });

Y a continuación, ejemplo de cómo usar obtener y obtener la información que necesita.

 document.getElementById("output").innerHTML = JSON.stringify(data, null, 2); }

No olvide especificar la salida en su página HTML

<pre id="output"> </pre>

Y puede consultar el siguiente documento sobre cómo analizar los datos JSON recibidos y extraer UID, por ejemplo.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda