Firebase Cloud Function 编写与部署

1、设置和初始化 Firebase SDK for Cloud Functions
  (1)、Cloud Functions 运行的是 Node v6.14.0,因此需要安装nodejs: https://nodejs.org/
(2)、安装CLI工具:
1
npm install -g firebase-tools  
  (3)、初始化配置,请执行以下操作:
1
2
3
4
5
6
运行 firebase login,通过浏览器登录并对 Firebase 工具进行身份验证。
转到 Firebase 项目目录。
运行 firebase init functions。该工具会为您提供使用 npm 安装依赖项的选项。如果要以其他方式管理依赖项,您可以放心地拒绝。
该工具支持两种语言:
    JavaScript
    TypeScript。 如需了解详情,请参阅使用 TypeScript 编写函数。

    完成后本地文件目录看起来就像这样

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
myproject
 +- .firebaserc    # Hidden file that helps you quickly switch between
 |                 # projects with `firebase use`
 |
 +- firebase.json  # Describes properties for your project
 |
 +- functions/     # Directory containing all your functions code
      |
      +- .eslintrc.json  # Optional file containing rules for JavaScript linting.
      |
      +- package.json  # npm package file describing your Cloud Functions code
      |
      +- index.js      # main source file for your Cloud Functions code
      |
      +- node_modules/ # directory where your dependencies (declared in
                       # package.json) are installed

  2、修改函数

   您的项目必须使用 Node require 语句导入 Cloud Functions 和 Admin SDK 模块。请将如下代码行添加到您的 index.js 文件中

1
2
3
4
const functions = require('firebase-functions');
 
const admin = require('firebase-admin');
admin.initializeApp();

  

  添加函数

1
2
3
4
5
6
7
exports.addMessage = functions.https.onRequest((req, res) => {
  const original = req.query.text;  //接收函数传递的参数
  return admin.database().ref('/messages').push({original: original}).then((snapshot) => {
   
    return res.redirect(303, snapshot.ref.toString());
  });
});

  3、部署和执行 addMessage()

     (1)在ssh终端运行以下命令部署您的函数

1
firebase deploy --only functions   //部署index.js中的所以函数

  

1
2
3
  如果只部署其中一个函数(加上函数名)
 
firebase deploy --only functions:addMessage

  

 

  4、访问函数

1
https://us-central1-MY_PROJECT.cloudfunctions.net/addMessage?text=uppercaseme

  

 

 

posted @   Joy_CShow  阅读(1935)  评论(0编辑  收藏  举报
编辑推荐:
· .NET 9 new features-C#13新的锁类型和语义
· Linux系统下SQL Server数据库镜像配置全流程详解
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
阅读排行:
· DeepSeek V3 两周使用总结
· 回顾我的软件开发经历(1)
· C#使用yield关键字提升迭代性能与效率
· 低成本高可用方案!Linux系统下SQL Server数据库镜像配置全流程详解
· 4. 使用sql查询excel内容
点击右上角即可分享
微信分享提示