Вопросы

Асинхронная функция не завершается

Я пишу асинхронную функцию async_create_user, используемую для моей HTTPS-функции firebase create_user формы в index.js.

index.js

exports.create_user = functions.https.onCall(async_create_user);

Я тестирую их все в одном файле user.js вот так, и запускаю node user.js Код получает ожидаемое поведение при создании пользовательских документов в моей базе данных, но я намерен завершить эту функцию, чтобы я мог проверить ее с помощью последовательности других функций. Могу ли я узнать, есть ли реализация, позволяющая прекратить его работу.

const { admin, db } = require("../util/admin");
//const db = admin.firestore();
//const admin = require('firebase-admin');
//admin.initializeApp(config);

const config = require("../util/config");
const { uuid } = require("uuidv4");

const {
  success_response,
  error_response
} = require("../util/validators");

const firebase = require("firebase");
firebase.initializeApp(config);

const {
  validateSignupData,
  validateLoginData,
  reduceUserDetails,
} = require("../util/validators");



exports.async_create_user = async function(data, context) {
  // Perform Authentication Checks
  try {
    const userRecord = await admin.auth().createUser({
      displayName: data.displayName,
      email: data.email,
      emailVerified: true,
      password: data.password,
      disabled: false
    });

    await admin.auth().setCustomUserClaims(userRecord.uid, {user_basic: true})

    //data required for the personal?
    const PrivateUser = {
      display_name: data.displayName,
      email: data.email,
      notification_ids: [],
      saved_posts: [],
      last_updated: admin.firestore.FieldValue.serverTimestamp()
    };

    const noImg = "no-img.png";

    //sets default profile image to be the empty image
    const PublicUser = {
      profile_image:
        {
          url: "some url",
          uid: userRecord.uid
        }
    }

    await db
      .collection("users_private")
      .doc(userRecord.uid)
      .set(PrivateUser);

    await db
      .collection("users_public")
      .doc(userRecord.uid)
      .set(PublicUser);

    console.log(userRecord.uid);
    return success_response();

  } catch (error) {
    console.log("Error in creation of user account", error);
    return error_response(error);
  }
}


const mockUser =     {
  displayName: "Mallory",
  email: "[email protected]",
  password: "123456",

  disabled: false,
  emailVerified: true
}

exports.async_create_user(mockUser);

Я пытаюсь запустить непрерывный сценарий, поэтому мне нужно его завершить. — я не знаю, что это значит. Отредактируйте вопрос, чтобы более подробно объяснить, чего вы пытаетесь достичь.   —  person Prashin Jeevaganth    schedule 28.05.2020

Читать:
Невозможно установить NodeJs: / usr / bin / env: node: нет такого файла или каталога

Похожие записи

Подмножество данных по окну временного интервала для каждой строки в кадре данных после использования group_by ()

admin

MongoDb автоматически обновляет данные через указанное количество раз

admin

PyTorch Общее время CUDA

admin

Может ли Pip установить зависимости, не указанные в setup.py во время установки?

admin

Не удается установить паркет через pip или conda на macOS Big Sur

admin

Как скачать универсальные артефакты из пользовательского интерфейса артефактов

admin