2017-09-07 5 views
0

を引っ張ってFirebaseのためのクラウド機能のHTTP要求をトリガだから私は私のFirebase DB私が開くので、もし私がクラウド機能で関数を記述する必要がありますどのようにFirebase DBからのデータ

Snapshot1

で、この単純なデータを持っていますhttps://example.com/292322のように、それはちょうどテキストを返します "7777777777"

私はこれまでのようなものを持っていますが、私はそれがオフであると確信しています。どうも! Firebaseクラウド機能付き

const functions = require('firebase-functions'); 
 

 
exports.urlPubkey = functions.https.onRequest((req, res) => { 
 
    database.ref('pubkeys').orderByChild('url').equalTo(req).once('value', snapshot => { 
 
    const match = snapshot.val(); 
 
    if (match) { 
 
     res.status(200).send("PUBKEY GOES HERE:)"); 
 
    } 
 
    }); 
 
}

答えて

0

あなたは、この場合にはそうconst key = snapshot.val().pubkey

snapshot.val().variableNameを使用してデータにアクセスすることができ、それは次のようになりますので、私はあなたのコードを変更します

const functions = require('firebase-functions'); 

exports.urlPubkey = functions.https.onRequest((req, res) => { 
    database.ref('pubkeys').orderByChild('url').equalTo(req).once('value', snapshot => { 
    const match = snapshot.val(); 
    if (match) { 
     res.status(200).send(match.pubkey)"); 
    } 
    }); 
} 

または

exports.urlPubkey = functions.https.onRequest((req, res) => { 
    database.ref('pubkeys').orderByChild('url').equalTo(req).once('value', snapshot => 
    if (snapshot.exists()) { 
     res.status(200).send(snapshot.val().pubkey)"); 
    } 
    }); 

あるいはこの:

exports.urlPubkey = functions.https.onRequest((req, res) => { 
    database.ref('pubkeys').orderByChild('url').equalTo(req).once('value', snapshot => 
    if (snapshot..hasChild(pubkey)) { 
     res.status(200).send(snapshot.val().pubkey)"); 
    } 
    }); 
関連する問題