0

cronjobを使用してFirebaseからノードを削除しようとしていますが、この機能はありますが、実行されると「エラー:要求を処理できませんでした」というメッセージが表示され、機能を持つFirebaseからノードを削除する

を「データベースが定義されていない」これが私の関数である:私は間違っ

exports.cleanStatsOnRequest = functions.https.onRequest((req, res) => { 
    const ref1 = firebase.database.ref; 
    const dbref = ref1.child(`/dailystats`); 
    console.log('removing dailystats'); 
    return dbref.remove 
    .then(() => { 
     res.send('dailystats removed'); 
    }) 
    .catch(error => { 
     res.send(error); 
    }); 
}); 

何をしているのですか?データベースを定義する正しい方法は何ですか?

+0

私は(正しい方法はfirebase.databaseであると信じて)。REF()など –

答えて

1

HTTPトリガークラウド機能からリアルタイムデータベースにアクセスするには、Firebase Admin SDKを使用する必要があります。 This documentationはデータベースからの読み方を示しています。 This exampleはデータベースへの書き込みを示しますが、これは削除と同様です。

+0

のおかげで、私は「昔の子ノードを削除」と「未使用アカウントを削除」と私は何も見つからなかっ上で探していました。今私は少し進歩があります。 YouTubeでこれらのチュートリアルでうまくいっています:) –

1

これを試してください。データベース、refおよびremoveは関数です。このguideをお読みください。

また、あなたは約束を返しますdbref.removeを()削除など()を返すべきではありません。

exports.cleanStatsOnRequest = functions.https.onRequest((req, res) => { 
const ref1 = firebase.database().ref();  // changes here 
const dbref = ref1.child('/dailystats'); 
console.log('removing dailystats'); 
return dbref.remove()      // changes here 
    .then(() => { 
     res.send('dailystats removed'); 
    }) 
    .catch(error => { 
     res.send(error); 
    }); 
}); 
関連する問題