簡體   English   中英

使用可調用 function 寫入數據 Firestore

[英]Write data Firestore using callable function

如何使用 callable function 將數據寫入 Firestore

我正在嘗試制作一個 function,它在同一個 http 調用中接收數據以將其傳遞給 Firestore。 Firebase 快速入門為基礎添加消息到目前為止,這個 function 一直很好:

exports.sendingMessage = functions.https.onRequest(async (req, res) => {
  var wtf = new Date();
  var month = wtf.getMonth();
  var date = wtf.getDate();
  var year = wtf.getFullYear();

  var DATE = (month + "-" + date + "-" + year);
  var type = "announcement"
  const original = req.query.text;

  var dataref = {
        type: type,
        date:DATE,
        update:original   
                }

  const myDB = await admin.firestore().collection('unfiltered').add({dataref:dataref});

  console.log('Added document with ID: ', myDB.id);


  res.end()
});

function 的工作方式是調用它(卷曲它)並將文本放在它顯示“TEXT_HERE”的位置。
這會觸發 function 並將數據發送到 FireStore:
下面是 function 的示例,出於隱私目的我更改了項目名稱,這個工作正常,但只向數據庫傳遞了一個詞。

curl https://us-central1-MY-PROJECT-ID.cloudfunctions.net/sendingMessage?text=TEXT_HERE -H “授權:bearer $(gcloud auth print-identity-token)”

這是運行 function 的結果:
函數示例

我想傳遞不止一個詞,這只是猜測我嘗試了下面的 curl 希望它能讓我像這樣向 Firestore 發送一個完整的句子,但運氣不佳:

curl -X POST --header "Content-Length: 1000" https://us-central1-MY-PROJECT-ID.cloudfunctions.net/sendingMessage?=-d '{"text":"Lorem ipsum dolor sit amet" }'-H“授權:持有者$(gcloud auth print-identity-token)”

如果不可能像上面那樣,你們都知道如何實現嗎?
非常感謝您的幫助!

這是由於缺乏了解,抱歉我缺乏知識!
這里的事情是 node.js 將此變量作為 html 編碼查詢。
因此,如果您要查詢關鍵字“text”,它實際上是一個變量,應該被視為 html 編碼變量,因此它不占用空格,它使用符號 %20 作為空格。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM