База данных облачных функций Firebase.ServerValue.TIMESTAMP не возвращает отметку времени - PullRequest
0 голосов
/ 06 мая 2018

Я развернул облачную функцию в Firebase и хочу получить текущую метку времени сервера, но она возвращает мне {".sv": "метку времени"}}.

Я проверил сообщение, но мне кажется, что я использую правильный код: Как получить метку времени сервера в облачных функциях для Firebase?

Мой код:

var firebase = require('firebase-admin');
var serviceAccount = require('./privateKey/key.json');
firebase.initializeApp({
  credential: firebase.credential.cert(serviceAccount),
  databaseURL: 'https://food-ninja-mobile.firebaseio.com/'
});
db = firebase.database();

db.ref(collection).once('value', snap => {

    var snapVal = snap.val()
    var myData = Object.keys(snapVal).map(key => {
      return snapVal[key];
    })
    var snapLength = myData.length

    returnMsg = {}
    returnMsg['DbCollection'] = collection
    returnMsg['count'] = snapLength
    returnMsg['action'] = 'getUserCollectionCount'
    returnMsg['timeStamp'] = firebase.database.ServerValue.TIMESTAMP
    console.log(returnMsg)
    return res.status(200).send(returnMsg)
  })

Мой API: https://us -central1-food-ninja-mobile.cloudfunctions.net / апи / getUserCollectionCount? Коллекция = пользователи

Пожалуйста, сообщите, почему он вернет {".sv": "метка времени"}} вместо метки времени.

1 Ответ

0 голосов
/ 06 мая 2018

firebase.database.ServerValue.TIMESTAMP не является значением, которое вы можете вернуть из облачной функции. Вы можете использовать только как маркер, который вы используете при вставке данных в базу данных реального времени. Этот токен переводится сервером базы данных как текущее время.

Если вы хотите вернуть текущее время, записанное Google, верните значение Date.now().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...