ডাটা কানেক্টের সাথে অ্যাডমিন SDK ব্যবহার করুন, ডাটা কানেক্টের সাথে অ্যাডমিন SDK ব্যবহার করুন

Firebase Admin SDK হল সার্ভার লাইব্রেরির একটি সেট যা আপনাকে বিশেষ সুবিধাপ্রাপ্ত পরিবেশ থেকে Firebase-এর সাথে বাল্ক ডেটা ম্যানেজমেন্ট এবং উন্নত সুযোগ-সুবিধা সহ অন্যান্য ক্রিয়াকলাপগুলির জন্য একটি Firebase Data Connect পরিষেবাতে প্রশ্ন এবং মিউটেশন করার মতো কাজগুলি সম্পাদন করতে দেয়৷

Admin SDK আপনাকে রিড/রাইট এবং রিড-ওনলি মোডে কল অপারেশন করার জন্য একটি API প্রদান করে। শুধুমাত্র পঠনযোগ্য ক্রিয়াকলাপগুলির সাথে, আপনি প্রশাসনিক ফাংশনগুলি বাস্তবায়নের মানসিক শান্তি পাবেন যা আপনার ডেটাবেসে ডেটা পরিবর্তন করতে পারে না।

অ্যাডমিন SDK সেটআপ

আপনার সার্ভারে Firebase Data Connect এর সাথে ব্যবহার শুরু করতে, আপনাকে প্রথমে Node.js এর জন্য Admin SDK ইনস্টল এবং সেট আপ করতে হবে।

আপনার স্ক্রিপ্টগুলিতে অ্যাডমিন SDK শুরু করুন৷

SDK শুরু করতে, Data Connect এক্সটেনশনগুলি আমদানি করুন এবং আপনার প্রকল্প পরিষেবা আইডি এবং অবস্থান ঘোষণা করুন৷


import { initializeApp } from 'firebase-admin/app';
import { getDataConnect } from 'firebase-admin/data-connect';

// If you'd like to use OAuth2 flows and other credentials to log in,
// visit https://firebase.google.com/docs/admin/setup#initialize-sdk
// for alternative ways to initialize the SDK.

const app = initializeApp();

const dataConnect = getDataConnect({
    serviceId: 'serviceId',
    location: 'us-west2'
});

Admin SDK সাথে ব্যবহার করার জন্য ডিজাইনের প্রশ্ন এবং মিউটেশন

Admin SDK নিম্নলিখিত বিবেচনার ভিত্তিতে Data Connect অপারেশন পরীক্ষা করার জন্য উপযোগী।

SDK এবং @auth(level: NO_ACCESS) অপারেশন নির্দেশিকা বুঝুন

যেহেতু Admin SDK বিশেষাধিকারের সাথে কাজ করে, তাই NO_ACCESS লেভেল সহ @auth নির্দেশাবলী ব্যবহার করে সেট করা অ্যাক্সেস লেভেল নির্বিশেষে এটি আপনার যেকোনো প্রশ্ন এবং মিউটেশন চালাতে পারে।

যদি আপনার ক্লায়েন্ট অপারেশনের পাশাপাশি, আপনি প্রশাসনিক স্ক্রিপ্টে আমদানি করার জন্য .gql সোর্স ফাইলগুলিতে আপনার প্রশাসনিক প্রশ্ন এবং মিউটেশনগুলি সংগঠিত করেন, ফায়ারবেস সুপারিশ করে যে আপনি প্রশাসনিক ক্রিয়াকলাপগুলিকে কোনও অনুমোদনের অ্যাক্সেস স্তর ছাড়াই চিহ্নিত করুন, বা সম্ভবত আরও স্পষ্টভাবে NO_ACCESS হিসাবে সেট করুন। যেভাবেই হোক, এটি এই ধরনের ক্রিয়াকলাপগুলিকে ক্লায়েন্টদের কাছ থেকে বা অন্যান্য অ-সুবিধাপ্রাপ্ত প্রেক্ষাপটে চালানো থেকে বাধা দেয়।

Data Connect এমুলেটরের সাথে SDK ব্যবহার করুন

প্রোটোটাইপ এবং পরীক্ষার পরিবেশে, এটি স্থানীয় ডেটাতে ডেটা সিডিং এবং অন্যান্য ক্রিয়াকলাপ সম্পাদন করতে কার্যকর হতে পারে। Admin SDK আপনাকে আপনার কর্মপ্রবাহকে সহজ করতে দেয় কারণ এটি স্থানীয় প্রবাহের জন্য প্রমাণীকরণ এবং অনুমোদনকে উপেক্ষা করে।

যখন DATA_CONNECT_EMULATOR_HOST এনভায়রনমেন্ট ভেরিয়েবল সেট করা থাকে তখন Firebase অ্যাডমিন SDKগুলি স্বয়ংক্রিয়ভাবে Data Connect এমুলেটরের সাথে সংযুক্ত হয়:

export DATA_CONNECT_EMULATOR_HOST="127.0.0.1:8080"

আরও তথ্যের জন্য, দেখুন:

সাধারণ ব্যবহারের ক্ষেত্রে প্রয়োগ করুন

Admin SDK আপনার সমালোচনামূলক ডেটাতে বিশেষ সুবিধাপ্রাপ্ত ক্রিয়াকলাপগুলির জন্য সরবরাহ করা হয়েছে।

Data Connect জন্য এপিআই একটি রিড-রাইট executeGraphql ইন্টারফেস এবং একটি রিড-ওনলি এক্সিকিউট executeGraphqlRead ইন্টারফেস নিয়ে গঠিত।

ব্যবহারকারীর ডেটা পরিচালনা করুন

Admin SDK জন্য একটি সাধারণ ব্যবহারের ক্ষেত্রে ব্যবহারকারীর ডেটা পরিচালনা করা হয়।

interface UserData {
  user: {
    id: string;
    name: string;
  };
}

export interface UserVariables {
  id: string;
}

const options:GraphqlOptions<UserVariables> = { variables: { id: "QVBJcy5ndXJ1" } };

// user can be publicly accessible, or restricted to admins
const query = "query getProfile(id: AuthID) { user(id: $id) { id name } }";

//executeGraphql
const gqlResponse = await dataConnect.executeGraphql<UserData, UserVariables>(query, options);

//executeGraphqlRead (similar to above but only for read operations)
const gqlResponse = await dataConnect.executeGraphqlRead<UserData, UserVariables>(query, options);

// gqlResponse -> { "data": { "user": { "id": "QVBJcy5ndXJ1", "name": "Fred" } } }

এরপর কি?