javascript - 在 Lambda 函数中使用 Firebase API AWS

标签 javascript node.js firebase firebase-realtime-database aws-lambda

谁能告诉我该怎么做?

这是我目前所拥有的,它没有将数据添加到我的数据库中

我在没有在常规 Web 应用程序上使用 lambda 函数的情况下测试了它并且它有效

var http = require('http');
var firebase = require('firebase');

exports.handler = (event, context, callback) => {

        var config = {
            apiKey: "AIzaSyCpk23423Iy_akmUniqUJhLt234324YPBE1vD7At8Laj4",
            authDomain: "echoproject-blah.firebaseapp.com",
            databaseURL: "https://echoproject-blah.firebaseio.com",
            storageBucket: "echoproject-blah.appspot.com",
            messagingSenderId: "83962234234322"
        };


   firebase.initializeApp(config);

   firebase.datetbase().ref('/employee/').push({
      med_number: Math.floor(Math.random() * 1000),
      full_name: 'John Smith',
      date_employed: Date.now(),
      email: '23432432@yahoo.com',
      phone_number: '+123423423',
      profile_picture : 'blah.img'
   }).catch(function(err){
    console.log(err);
   });



    if (event.session.new) {
        onSessionStarted({ requestId: event.request.requestId }, event.session);
    }

    if (event.request.type === 'LaunchRequest') {
        onLaunch(event.request,
            event.session,
            (sessionAttributes, speechletResponse) => {
                callback(null, buildResponse(sessionAttributes, speechletResponse));
            });
    } else if (event.request.type === 'IntentRequest') {
        onIntent(event.request,
            event.session,
            (sessionAttributes, speechletResponse) => {
                callback(null, buildResponse(sessionAttributes, speechletResponse));
            });
    } else if (event.request.type === 'SessionEndedRequest') {
        onSessionEnded(event.request, event.session);
        callback();
    }
   } catch (err) {
    callback(err);
     }



}

我是不是漏了什么?

我正在尝试为我的 Amazon Echo 使用 firebase。会不会很麻烦?

我的 firebase.database 没有被识别吗?

更新

这些都不是solutions也为我工作

**已解决**

所以在经历了很多挫折之后,我决定放弃 firebase Nodejs sdk 并使用 Firebase Endpoint urls

var myJSONObject = {
            med_number: Math.floor(Math.random() * 1000),
            full_name: 'John Bruh',
            date_employed: Date.now(),
            email: 'vi43544tle@yahoo.com',
            phone_number: '+345345',
            profile_picture : '34534534'
        };
request({
    url: "https://echoproject-c78fghfgh6f.firebaseio.com/rest/saving-data/users.json",
    method: "POST",
    json: true,   // <--Very important!!!
    body: myJSONObject
}, function (error, response, body){
    if(error) console.log(error);
    console.log(response);
});

最佳答案

拥有数据库而不是“datetbase”可能会有所帮助:

firebase.datetbase().ref('/employee/').push({

关于javascript - 在 Lambda 函数中使用 Firebase API AWS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39631046/

相关文章:

javascript - 使用 extend 的继承和 ExtJs

javascript - 无法在r中使用phantomjs抓取多个页面

javascript - 为什么 BST(英国夏令时/夏令时)被添加到我的 Node 日期时间中?

Javascript 如何添加和删除 2 层深度的 JSON 元素

java - Firebase 在应用启动时检索所有数据

javascript - CKEDITOR 4.0 动态分离工具栏

javascript - Angular JS 不允许 preventDefault 或 return false 处理表单提交

javascript - 为什么我的 json 对象的 `email` 属性不会显示在我的 jade 模板中?

javascript - 当我从 Firebase 获取数据时,我的 Html 页面显示 [object Object]

ios - 处理 Firebase + Facebook 登录流程