2017-06-25 65 views
5

如何在Firebase中的HTTPS功能上設置一些參數? 我正在構建一個應用程序,並在構建應用程序的同時,我設法增加了我的郵件列表。現在我想發送郵件,但是我想確保在我發送任何內容之前他們可以退訂。Firebase雲端函數中的參數HTTPS

我對所有事情都使用Firebase,並且設法爲每個訂閱郵件發送郵件。

我也可以「取消訂閱」特定的郵件,但這是硬編碼的,根本不是最佳解決方案。

exports.testUnsub = functions.https.onRequest((req, res) => { 
    var db = admin.database(); 
    var ref = db.ref("mailingList/-KhBOisltrOmv57Mrzus"); 
    ref.child("subscribed").set(false); 
    console.log("-KhBOisltrOmv57Mrzus has unsubscribed from mailing list."); 
}); 

在我發送的郵件中有一個URL,它會觸發此HTTPS功能。我想在該URL上設置一個參數,使其變爲動態。例如:

https://us-central1-<project-id>.cloudfunctions.net/testUnsub?listID=xxxxxxxxxxx 

我正在尋找任何可以讓我走向正確方向的東西。

回答

10

重要的是要知道https函數的req和res參數是Express.js Request和Response對象。

Request對象包含有關來自客戶端的請求的所有數據,包括客戶端在URL中發送的query。它將採取req.query.name_of_the_parameter的形式。

+0

但我收到「您的客戶端沒有權限來獲取URL」當我使用'req.query.titl' – MurWade

+0

道格那裏與雲功能的任何方式來定義並提取路由參數,類似於快速,你會怎麼做像'app.get('/ users /:userId/books /:bookId',function(req,res){...}'? –

相關問題