Google is committed to advancing racial equity for Black communities. See how.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Umgang mit Abhängigkeiten

Eine Funktion darf sowohl externe Node.js-Module als auch lokale Daten verwenden. Abhängigkeiten in Node.js werden mit npm verwaltet und in einer Metadatendatei namens package.json . Die Laufzeiten der Cloud-Funktionen Node.js unterstützen im Allgemeinen die Installation mit npm oder Garn .

Um eine Abhängigkeit für Ihre Funktion anzugeben, fügen Sie sie Ihrer Datei package.json .

In diesem Beispiel ist eine Abhängigkeit in der Datei package.json :

{
  "dependencies": {
    "escape-html": "^1.0.3"
  }
}

Die Abhängigkeit wird dann in die Funktion importiert:

JavaScript

const escapeHtml = require('escape-html');

// Return a greeting with the input HTML-escaped.
exports.hello = functions.https.onRequest((req, res) => {
  res.send(`Hello ${escapeHtml(req.query.name || req.body.name || 'World')}!`);
});

Typoskript

import * as escapeHtml from 'escape-html';

// Return a greeting with the input HTML-escaped.
export let hello = functions.https.onRequest((req, res) => {
  res.send(`Hello ${escapeHtml(req.query.name || req.body.name || 'World')}!`);
}

Einbeziehen lokaler Node.js-Module als Teil Ihres Bereitstellungspakets

Sie können auch lokale Node.js-Module als Teil Ihrer Funktion einbeziehen. Sie können dies erreichen, indem Sie Ihr Modul in package.json mit dem Präfix file: deklarieren. Im folgenden Beispiel bezieht sich mymodule auf Ihren mymoduledir und mymoduledir ist das Verzeichnis, das Ihr Modul enthält:

{
  "dependencies": {
    "mymodule": "file:mymoduledir"
  }
}

Der Code für dieses lokale Modul sollte an einem anderen Ort als dem Ordner node_modules im Stammverzeichnis Ihrer Funktion gespeichert werden.

Verwenden von npm zum lokalen Installieren von Node.js-Modulen

Der einfachste Weg, ein Node.js-Modul lokal zu installieren, besteht darin, den Befehl npm install in dem Ordner zu verwenden, der Ihre Cloud-Funktion enthält. Mit dem folgenden Befehl wird beispielsweise das uuid Modul uuid :

npm install uuid

Dies kombiniert zwei Schritte:

  1. Es markiert die neueste Version des Moduls als Abhängigkeit in Ihrer Datei package.json . Dies ist sehr wichtig: Cloud Functions installiert nur Module, die in Ihrer package.json Datei deklariert sind.
  2. Es lädt das Modul in Ihr Verzeichnis node_modules herunter. Auf diese Weise können Sie das Modul bei der lokalen Entwicklung verwenden.

Wenn Sie npm nicht auf Ihrem Computer installiert haben, holen Sie sich npm .

Zusätzliche Schritte für TypeScript

TypeScript hilft Ihnen am meisten, wenn Sie Bibliotheken mit Typinformationen verwenden. Auf diese Weise kann TypeScript Syntaxfehler abfangen und Editoren geben Ihnen bessere Vorschläge für die automatische Vervollständigung. Einige Bibliotheken, wie firebase-admin und firebase-functions , werden mit TypeScript-Definitionen geliefert.

Viele Bibliotheken bieten keine eigene TypeScript-Definition. Das DefinitelyTyped- Projekt bietet von der Community verwaltete Definitionen für die beliebtesten Knotenbibliotheken. DefinitelyTyped veröffentlicht diese Definitionen unter demselben NPM-Paketnamen, jedoch innerhalb der Organisation "@types". Beispielsweise können Sie die uuid für die uuid Bibliothek folgendermaßen installieren:

npm install @types/uuid

Wenn Sie sich mit TypeScript vertraut machen, kombinieren Sie möglicherweise beide Installationen:

npm install uuid @types/uuid

Typabhängigkeiten sollten mit der Bibliotheksabhängigkeit identisch sein. Beispielsweise sollten Sie uuid als normale Abhängigkeit und @types/uuid als Dev-Abhängigkeit oder Peer-Abhängigkeit speichern.

Laden von Node.js-Modulen

Verwenden Sie die Funktion Node.js require() , um ein von Ihnen installiertes Node.js-Modul zu laden. Sie können auch die Funktion require() verwenden, um lokale Dateien zu importieren, die Sie neben Ihrer Funktion bereitstellen.

Wenn Sie Funktionen in TypeScript schreiben, verwenden Sie die import Anweisung auf die gleiche Weise, um alle von Ihnen installierten Node.js-Module zu laden.

Private Module verwenden

Um ein privates npm-Modul verwenden zu können , müssen Sie Anmeldeinformationen (Authentifizierungstoken) für die npm-Registrierung in einer .npmrc Datei .npmrc , die sich im Verzeichnis der Funktion befindet. In der npm-Dokumentation wird erläutert, wie Sie benutzerdefinierte schreibgeschützte Zugriffstoken erstellen. Wir .npmrc davon ab, die im Home-Verzeichnis erstellte .npmrc Datei zu verwenden, da sie ein Lese- / Schreib-Token enthält. Schreibberechtigungen sind während der Bereitstellung nicht erforderlich und können ein Sicherheitsrisiko darstellen.

.npmrc Sie die .npmrc Datei nicht .npmrc , wenn Sie keine privaten Repositorys verwenden, da dies die Bereitstellungszeit für Ihre Funktionen verlängern kann.