Arduino SIM800L Firestore数据库安全规则

时间:2019-03-08 12:29:20

标签: arduino google-cloud-firestore

我想使用带有SIM800L模块的Arduino将数据发布到Firestore数据库中。

我已经完成了使用Firebase Database Realtime的测试,该测试效果很好,但是没有配置安全性。

现在,我通过配置安全性来使用Firestore数据库。 我阅读了官方文档,但不知道Arduino应该如何请求输入身份验证信息。

1 个答案:

答案 0 :(得分:0)

更新我的问题。

这是我在没有安全配置的情况下用于实时数据库的代码。

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

admin.initializeApp();

exports.helloWorld = functions.https.onRequest((req, res) => {
    res.send('identifiant: ' + req.body.identifiant);
});

exports.insertMesure = functions.https.onRequest((req, res) => {
    const identifiant = req.body.identifiant;
    const temperatureAir = req.body.temperatureAir;
    const humiditeSol = req.body.humiditeSol;
    const humiditeAir = req.body.humiditeAir;
    const niveauEau = req.body.niveauEau;
    const phSol = req.body.phSol;
    const dateMesure = Date.now();

    const mesure = {
        temperatureAir: temperatureAir,
        humiditeSol: humiditeSol,
        humiditeAir: humiditeAir,
        niveauEau: niveauEau,
        phSol: phSol,
        dateMesure: dateMesure
    };

    const dbRef = admin.database().ref('/users/' + identifiant + '/mesures');
    dbRef.push(mesure)
    .then(() => {
        return res.status(200).send('oK');
    })
    .catch(err => {
        res.status(500).send('Error: ' + err);
    });

});

我的数据库的结构:

- users
  - {user_id}
   - mesures

已替换

  

user_id

通过标识符属性

  

可识别

由Arduino发送的请求