Firebase serve TypeError: требуется строка шаблона глобуса

В настоящее время у меня есть развернутое приложение firebase, которое я теперь подключаю к узлу для создания пользовательского интерфейса. Я ранее развертывал это приложение с хостингом firebase и базой данных firebase в реальном времени и не испытывал никаких проблем. Даже при точном воспроизведении примера кода и указаний из видео «Приложения Node.js на ускоренном курсе хостинга Firebase - Firecasts» я встречал эту ошибку при попытке вызвать службу firebase из командной строки. Я использую Mac OSX. Сообщение об ошибке выглядит следующим образом:

i  functions: Preparing to emulate functions.
i  hosting: Serving hosting files from: public
✔  hosting: Local server: http://localhost:5000
✔  functions: helloWorld: http://localhost:5001/test-setup-5ae3a/us-central1/helloWorld
127.0.0.1 - - [26/Nov/2018:21:53:20 +0000] "GET /__/firebase/init.js HTTP/1.1" 200 - "http://localhost:5000/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
TypeError: glob pattern string required
    at minimatch (/usr/local/lib/node_modules/firebase-tools/node_modules/minimatch/minimatch.js:94:11)
    at /usr/local/lib/node_modules/firebase-tools/node_modules/superstatic/lib/middleware/rewrites.js:20:11
    at /usr/local/lib/node_modules/firebase-tools/node_modules/superstatic/lib/middleware/rewrites.js:33:17
    at _run (/usr/local/lib/node_modules/firebase-tools/node_modules/superstatic/lib/activator.js:58:16)
    at /usr/local/lib/node_modules/firebase-tools/node_modules/superstatic/lib/middleware/files.js:117:16
    at tryCatch (/usr/local/lib/node_modules/firebase-tools/node_modules/rsvp/dist/rsvp.js:525:12)
    at invokeCallback (/usr/local/lib/node_modules/firebase-tools/node_modules/rsvp/dist/rsvp.js:538:13)
    at publish (/usr/local/lib/node_modules/firebase-tools/node_modules/rsvp/dist/rsvp.js:508:7)
    at flush (/usr/local/lib/node_modules/firebase-tools/node_modules/rsvp/dist/rsvp.js:2415:5)
    at _combinedTickCallback (internal/process/next_tick.js:73:7)

Вот мой firebase.json:

{
  "database": {
    "rules": "database.rules.json"
  },
  "hosting": {
    "public": "public",
    "rewrites": [
      {
        "sources": "/timestamp",
        "function": "app"
      }
    ],
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ]
  },
  "functions": {
    "predeploy": [
      "npm --prefix \"$RESOURCE_DIR\" run lint"
    ]
  }
}

Вот документ index.js в папке моих функций:

const functions = require('firebase-functions');
const express = require('express');

const app = express();
app.get('/timestamp', (request, responce) => {
  response.send(`${Date.now}`);
});

exports.helloWorld = functions.https.onRequest(app);

Вероятно, это вызвано чем-то в вашем файле firebase.json, поэтому, пожалуйста, включите в свой вопрос минимальный файл, который вы можете воспроизвести. Также см. как создать минимальный, полный, проверяемый пример.

Frank van Puffelen 26.11.2018 23:20
Интеграция Angular - Firebase Analytics
Интеграция Angular - Firebase Analytics
Узнайте, как настроить Firebase Analytics и отслеживать поведение пользователей в вашем приложении Angular.
0
1
499
1

Ответы 1

Проблема в этой строке:

exports.helloWorld = functions.https.onRequest(app);

Должен быть:

exports.app = functions.https.onRequest(app);

Другие вопросы по теме