node.js - tutorial - npm



ফায়ারবেস ফাংশন: সংজ্ঞায়িত 'ইউজার_আইডি' সম্পত্তিটি পড়তে পারে না (1)

আমি আমার মোবাইল অ্যাপ্লিকেশনটির সাথে একটি সাধারণ হ্যালো ওয়ার্ল্ড ফায়ারবেস ফাংশনটি করার চেষ্টা করছি, আমি ব্যবহারকারীর আইডি লগ করতে চাই যাতে আমি দেখতে পাই যে ফাংশনটি কাজ করে। এটি আমার বর্তমান জাভাস্ক্রিপ্ট কোড:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

exports.sendNotification = functions.database.ref('/notifications/{user_id}').onWrite((event) => {

  console.log('Testing stuff', event.params.user_id);

  return;
});

নির্দিষ্ট ডাটাবেসটেবেলে নতুন ডেটা লেখা গেলে এটি ট্রিগার করে তবে এই ত্রুটিটি দেখায়:

TypeError: Cannot read property 'user_id' of undefined
    at exports.sendNotification.functions.database.ref.onWrite (/user_code/index.js:8:44)
    at Object.<anonymous> (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:112:27)
    at next (native)
    at /user_code/node_modules/firebase-functions/lib/cloud-functions.js:28:71
    at __awaiter (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:24:12)
    at cloudFunction (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:82:36)
    at /var/tmp/worker/worker.js:700:26
    at process._tickDomainCallback (internal/process/next_tick.js:135:7)

বিজ্ঞপ্তি ডাটাবেসটি দেখতে এমন দেখাচ্ছে:


আপনাকে সর্বশেষতম ফায়ারবেস-ফাংশন এবং ফায়ারবেস-অ্যাডমিন ইনস্টল করতে হবে:

npm install firebase-[email protected] firebase-[email protected] --save
npm install -g firebase-tools

নতুন এপিআই ব্যবহার করতে সক্ষম হতে, আরও তথ্যের জন্য এখানে চেক করুন:

https://firebase.google.com/docs/functions/get-started#set_up_and_initialize

এই পরিবর্তন:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

exports.sendNotification = functions.database.ref('/notifications/{user_id}').onWrite((event) => {

console.log('Testing stuff', event.params.user_id);

এটিতে:

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

exports.sendNotification = functions.database.ref('/notifications/{user_id}').onWrite((change, context) => {

console.log('Testing stuff', context.params.user_id);

onWrite এবং onUpdate ইভেন্টগুলির জন্য ডেটা প্যারামিটারের ক্ষেত্রগুলির before এবং after রয়েছে has এগুলির প্রত্যেকটি একই পদ্ধতিতে admin.database.DataSnapshot উপলব্ধ একটি admin.database.DataSnapshot

params

রিয়েলটাইম ডেটাবেস ট্রিগারের জন্য রেফ () পদ্ধতিতে প্রদত্ত পাথ প্যারামিটারে ওয়াইল্ডকার্ডের মানগুলি অন্তর্ভুক্ত object

আরও তথ্য এখানে:

মেঘ ফাংশন v1.0 পরিবর্তন

EventContext#params

Change