zoukankan      html  css  js  c++  java
  • [Firebase] Firebase Cloud Functions

    Firebase cloud functions is similar to AWS lambda or serverless. 

    You can deploy you code which wrote in Node.js and deploy to firebase.

    It can response for any realtime database changes or http requests.

    Set up:

    https://firebase.google.com/docs/functions/get-started

    Code example:

    For database changes:

    // Listens for new messages added to /messages/:pushId/original and creates an
    // uppercase version of the message to /messages/:pushId/uppercase
    exports.makeUppercase = functions.database.ref('/messages/{pushId}/original')
        .onWrite(event => {
          // Grab the current value of what was written to the Realtime Database.
          const original = event.data.val();
          console.log('Uppercasing', event.params.pushId, original);
          const uppercase = original.toUpperCase();
          // You must return a Promise when performing asynchronous tasks inside a Functions such as
          // writing to the Firebase Realtime Database.
          // Setting an "uppercase" sibling in the Realtime Database returns a Promise.
          return event.data.ref.parent.child('uppercase').set(uppercase);
        });

    For http request:

    // Take the text parameter passed to this HTTP endpoint and insert it into the
    // Realtime Database under the path /messages/:pushId/original
    exports.addMessage = functions.https.onRequest((req, res) => {
      // Grab the text parameter.
      const original = req.query.text;
      // Push the new message into the Realtime Database using the Firebase Admin SDK.
      admin.database().ref('/messages').push({original: original}).then(snapshot => {
        // Redirect with 303 SEE OTHER to the URL of the pushed object in the Firebase console.
        res.redirect(303, snapshot.ref);
      });
    });
  • 相关阅读:
    poj3277 City Horizon
    60.左值右值以及类型判断
    59.C++与正则表达式
    57.C++处理转义字符
    56.lambda表达式与绑定以及伪函数和绑定
    55.函数模板指针匹配(模板自动匹配*多的)
    54.函数模板默认参数
    53.伪函数与函数绑定器
    52.模板的重载
    51.模板与引用
  • 原文地址:https://www.cnblogs.com/Answer1215/p/7357868.html
Copyright © 2011-2022 走看看