2017-06-25 26 views
5

Jak ustawić niektóre parametry funkcji HTTPS w Firebase? Buduję aplikację, a podczas budowania aplikacji udało mi się rozwinąć moją listę mailingową. Teraz chcę wysyłać wiadomości e-mail, ale chcę się upewnić, że mogą anulować subskrypcję, zanim wyślę coś.Parametry funkcji chmury Firebase HTTPS

Używam Firebase do wszystkiego i udało mi się utworzyć funkcję, która wysyła wiadomości do każdej subskrybowanej wiadomości.

Jestem również w stanie "zrezygnować z subskrypcji" konkretnej wiadomości, ale jest to zakodowane na stałe i wcale nie jest optymalnym rozwiązaniem.

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."); 
}); 

W przesyłanej przeze mnie wiadomości istnieje adres URL, który uruchamia tę funkcję HTTPS. Chcę ustawić parametr na tym adresie URL, aby stał się dynamiczny. Coś jak:

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

Szukam wszystkiego, co może mnie we właściwym kierunku.

Odpowiedz

10

Ważne jest, aby wiedzieć, że parametry req i res dla funkcji https to Express.js obiektów żądania i odpowiedzi.

Obiekt Request zawiera wszystkie dane dotyczące żądania pochodzącego od klienta, w tym numer query, który klient wysłał w adresie URL. Przybierze postać req.query.name_of_the_parameter.

+0

Ale otrzymuję komunikat "Twój klient nie ma uprawnień do uzyskania adresu URL", gdy używam 'req.query.titl' – MurWade

+0

Doug jest w żaden sposób z Cloud Functions do definiowania i wyodrębniania parametrów trasy, podobnie jak Express, gdzie robisz coś jak 'app.get ('/ users /: userId/books /: bookId', function (req, res) {...}'? –