Облачные функции Google работают только в процессе разработки - функции вернули неопределенное, ожидаемое обещание или ценность - PullRequest
1 голос
/ 07 мая 2019

Я хочу, чтобы это работало при развертывании.Он делает то, что задумал в локальной разработке, добавляет кучу аптек в базу данных Firestore.Он также успешно разворачивается и даже возвращает success на облачной платформе Google, когда я запускаю его.

НО ничего не происходит при запуске с облачной платформы Google .Как я уже сказал, работает только на развитие.

Единственная подсказка, которую я имею, - это то, что я регистрируюсь в терминале, когда запускаю его при разработке.

firebase > getFarmacias()
'Successfully invoked function.'
firebase > info: User function triggered, starting execution
error: Function returned undefined, expected Promise or value
info: Execution took 20 ms, user function completed successfully

Вот код моей функции.

exports.getFarmacias = functions.pubsub.schedule('0 20 * * *').onRun((context) => {
  // Declare http requests
  const firstReq = axios.get('https://farmanet.minsal.cl/maps/index.php/ws/getLocalesTurnos')
  const secondReq = axios.get('https://farmanet.minsal.cl/maps/index.php/ws/getLocalesUrgencia')

  // Trigger both requests with axios.all
  axios.all([firstReq, secondReq]).then(axios.spread((turno, urgencia) => {
    const farmacias = [...turno.data, ...urgencia.data];

    // for each element in 'farmacias' add a new document to 'firestore/farmacias'
    farmacias.forEach(farmacia => {
      return db.collection('farmacias').add({ farmacia })
      })
  })).catch(err=> console.log(err));
})

Я прочитал другие ответы и пытаюсь вернуть каждую строку в коде, но не могу понять это правильно.

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