2017-06-25 36 views
5

Làm cách nào để đặt một số thông số trên các chức năng HTTPS của tôi trong Firebase? Tôi đang xây dựng một ứng dụng và khi xây dựng ứng dụng, tôi đã quản lý để phát triển danh sách gửi thư của mình. Bây giờ tôi muốn gửi thư ra, nhưng tôi muốn chắc chắn rằng họ có thể hủy đăng ký trước khi tôi gửi bất cứ điều gì ra ngoài.Tham số trong Chức năng đám mây của Firebase HTTPS

Tôi đang sử dụng Firebase cho mọi thứ và tôi đã quản lý để tạo một hàm gửi thư đến mọi thư đã đăng ký.

Tôi cũng có thể "hủy đăng ký" một thư cụ thể, nhưng đó là mã hóa cứng và không phải là giải pháp tối ưu.

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

Trong thư tôi gửi có URL, kích hoạt chức năng HTTPS này. Tôi muốn đặt tham số trên URL đó để nó trở nên động. Một cái gì đó như:

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

Tôi đang tìm mọi thứ có thể giúp tôi đi đúng hướng.

Trả lời

10

Điều quan trọng là phải biết rằng các tham số req và res cho hàm https của bạn là Express.js Đối tượng yêu cầu và phản hồi.

Đối tượng Request chứa tất cả dữ liệu về yêu cầu đến từ khách hàng, bao gồm query mà khách hàng đã gửi trong URL. Nó sẽ có dạng req.query.name_of_the_parameter.

+0

Nhưng tôi nhận được "Khách hàng của bạn không có quyền truy cập URL" khi tôi sử dụng 'req.query.titl' – MurWade

+0

Doug là có cách nào với Cloud Chức năng để xác định và trích xuất các thông số tuyến đường, tương tự như Express, nơi bạn sẽ làm gì một cái gì đó như 'app.get ('/ users /: userId/books /: bookId', chức năng (req, res) {...}'? –

Các vấn đề liên quan