Невозможно развернуть функцию, если я добавляю обратный вызов в запрос - PullRequest
0 голосов
/ 26 мая 2020

У меня проблема с функциями firebase. Мне нужно вызвать внешний API, поэтому я использую пакет запроса. Что никогда не было проблемой для других проектов. Теперь я столкнулся с ситуацией, когда я могу развернуть свою функцию, если я только вызываю request(options). Но я не смогу развернуть функцию, если добавлю обратный вызов, например:

request(options, function (err, res, body) {})

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

10 silly lifecycle functions@~lint: Args: [ '/d /s /c', 'tslint --project tsconfig.json' ]
11 silly lifecycle functions@~lint: Returned: code: 2  signal: null
12 info lifecycle functions@~lint: Failed to exec lint script
13 verbose stack Error: functions@ lint: `tslint --project tsconfig.json`
13 verbose stack Exit status 2
13 verbose stack     at EventEmitter.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
13 verbose stack     at EventEmitter.emit (events.js:189:13)
13 verbose stack     at ChildProcess.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:189:13)
13 verbose stack     at maybeClose (internal/child_process.js:970:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
14 verbose pkgid functions@

Если это интересно, мой пакет. json это:

{
  "name": "functions",
  "scripts": {
    "lint": "tslint --project tsconfig.json",
    "build": "tsc",
    "serve": "npm run build && firebase serve --only functions",
    "shell": "npm run build && firebase functions:shell",
    "start": "npm run shell",
    "deploy": "firebase deploy --only functions",
    "logs": "firebase functions:log"
  },
  "engines": {
    "node": "10"
  },
  "main": "lib/index.js",
  "dependencies": {
    "@google-cloud/firestore": "^3.5.0",
    "buffer": "^5.6.0",
    "cors": "^2.8.5",
    "dateformat": "^3.0.3",
    "firebase-admin": "^8.12.1",
    "firebase-functions": "^3.6.1",
    "request": "^2.83.0"
  },
  "devDependencies": {
    "tslint": "^5.12.0",
    "typescript": "^3.2.2"
  },
  "private": true
}

Я действительно не могу найти причину, по которой обратный вызов предотвратит развертывание.

Я был бы очень признателен за любую помощь. Спасибо!

Обновление: Моя функция особо не работает

exports.testApi = functions.https.onRequest((req, res) => {
        var body = {
            'key': 'val'
        }
        var options = {
            uri: 'https://google.com',
            method: 'POST',
            body: body
        }
        // This works:
    request(options);

    //This can not be deployed
        request(options, function(err, res, body) {
            console.log(body);
        });

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