个性化阅读
专注于IT技术分析

Firebase创建和部署云功能

点击下载

在上一节中, 我们了解了什么是云功能, 为什么使用它们, 它们如何工作以及不同类型的触发器。

现在, 我们将在Firebase中创建和部署云功能。为此, 我们必须设置Node.js环境以编写函数, 而Firebase CLI也需要Node.js和npm来部署函数。

Firebase强烈建议你开始使用Node.js 8。要安装Node.js和npm, 建议使用Node Version Manager。

步骤1:

因此, 我们将首先从以下站点下载Node.js:https://nodejs.org/en/。

Firebase创建和部署云功能

一旦下载了node.js并成功运行, 我们的下一步就是安装Firebase CLI。安装Node.js会自动安装npm命令工具。之后, 我们通过在命令提示符下运行以下命令, 通过npm安装Firebase CLI:

npm install -g firebase-tools
Firebase创建和部署云功能

第2步:

现在, 我们将登录并测试Firebase CLI。安装CLI后, 我们必须对其进行身份验证。之后, 我们可以通过列出Firebase项目来确认身份验证。

1)我们运行以下命令以使用我们的Google帐户登录Firebase。

firebase login

上面的命令将我们的本地计算机连接到Firebase, 并授予对Firebase项目的访问权限。

Firebase创建和部署云功能

选择允许访问时, 我们将切换到浏览器以允许访问Firebase CLI:

Firebase创建和部署云功能

当我们单击允许时, 它将显示以下窗口:

Firebase创建和部署云功能
Firebase创建和部署云功能

2)现在, 我们测试CLI是否正常工作并访问我们的帐户。这是通过以下命令列出Firebase项目来完成的:

firebase projects: list
Firebase创建和部署云功能

第三步:

现在, 我们将在桌面上创建一个名为FirebaseCloudFunction的目录, 并使用命令行参数移至该目录。

Firebase创建和部署云功能

步骤4:

现在, 运行Firebase init functions命令以以下方式初始化函数:

Firebase创建和部署云功能

它将开始创建目录结构。我们将选择是, 然后继续进行。

Firebase创建和部署云功能

就我而言, 默认情况下, 已经设置了一个名为fir-demo-ca1c9的项目。当你按是时, 它将要求选择一个项目, 一旦选择了项目, 它将要求选择你的首选语言, 即JavaScript或TypeScript。我将选择JavaScript并继续进行。

Firebase创建和部署云功能

它将要求使用ESLint捕获可能的错误并强制执行样式。我们将选择是, 然后继续。

Firebase创建和部署云功能

现在, 它将要求使用npm安装依赖项。我们还将在此处选择“是”并继续。

Firebase创建和部署云功能

在这里, 我们的Firebase初始化完成, 并且将为我们提供一些目录结构。转到我们的FirebaseCloudFunction目录。

Firebase创建和部署云功能

步骤5:

现在, 打开function文件夹并打开index.json文件。在此文件中, 我们编写了函数。

Firebase创建和部署云功能
Firebase创建和部署云功能

我们在这里编写代码。

'use strict';

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

// [starting allAdd]
// [starting addFunctionTrigger]
// adding two numbers to each other.
exports.addNumbers = functions.https.onCall((data) => {
// [ending addFunctionTrigger]
  // [starting readAddData]
  // Numbers are passed from the client.
  const firstNumber = data.firstNumber;
  const secondNumber = data.secondNumber;
  // [ending readAddData]

  // [starting addHttpsError]
  // check that attributes are present and are numbers.
  if (!Number.isFinite(firstNumber) || !Number.isFinite(secondNumber)) {
    // Throw an HttpsError. So that the client gets the error details. 
    throw new functions.https.HttpsError('invalid-argument', 'The function must be called with ' +
        'two arguments "firstNumber" and "secondNumber" which must both be numbers.');
  }
  // [ending addHttpsError]

  // [starting returnAddData]
  // returning result.
  return {
    firstNumber: firstNumber, secondNumber: secondNumber, operator: '+', operationResult: firstNumber + secondNumber, };
  // [ending returnAddData]
});
// [ending allAdd]

步骤6:

现在, 我们将部署功能。我们可以使用firebase deploy -only functions:function_name部署一个功能, 也可以使用firebase deploy部署所有功能。

Firebase创建和部署云功能

此处, 功能已成功部署。我们将转到Firebase控制台检查该功能。

Firebase创建和部署云功能

赞(0)
未经允许不得转载:srcmini » Firebase创建和部署云功能

评论 抢沙发

评论前必须登录!