ড্রপডাউন নির্বাচনের সাথে ডায়নামিক পিডিএফ লোডিং তৈরি করা
ওয়েব ডেভেলপমেন্টের জগতে, ইন্টারঅ্যাক্টিভিটি ব্যবহারকারীর অভিজ্ঞতা বাড়ানোর ক্ষেত্রে মুখ্য ভূমিকা পালন করে। একটি সাধারণ চ্যালেঞ্জ হল ব্যবহারকারীর ইনপুটের উপর ভিত্তি করে গতিশীলভাবে বিষয়বস্তু আপডেট করা। এর একটি উদাহরণ হল যখন ব্যবহারকারীদের ড্রপডাউন মেনু থেকে বিকল্পগুলি নির্বাচন করে PDF ফাইলের মতো বিভিন্ন সংস্থান লোড করতে হয়।
এই নিবন্ধটি এইচটিএমএল এবং জাভাস্ক্রিপ্টে দুটি ড্রপডাউন মেনু ব্যবহার করে একটি পিডিএফ ফাইলপাথকে গতিশীলভাবে পরিবর্তন করার জন্য একটি বাস্তব সমাধান অন্বেষণ করে। লক্ষ্য হল নির্বাচিত বছর এবং মাসের মানগুলির উপর ভিত্তি করে একটি পিডিএফ ভিউয়ার পুনরায় লোড করা। আপনি এটির মাধ্যমে কাজ করার সাথে সাথে, আপনি জাভাস্ক্রিপ্টের মৌলিক বিষয়গুলি এবং এটি কীভাবে ডকুমেন্ট অবজেক্ট মডেল (DOM) এর সাথে ইন্টারঅ্যাক্ট করে উভয়েরই উন্নতি করবেন।
প্রদত্ত কোড কাঠামো ব্যবহারকারীদের এক বছর এবং এক মাস নির্বাচন করতে দেয়, যা PDF লোডারের URL আপডেট করে। যাইহোক, জাভাস্ক্রিপ্টের সাথে অপরিচিত নতুন বিকাশকারীদের জন্য, এই প্রক্রিয়াটি মসৃণভাবে কাজ করার জন্য কিছু অসুবিধা হতে পারে। আমরা একটি মসৃণ ব্যবহারকারীর অভিজ্ঞতার জন্য এই চ্যালেঞ্জগুলি এবং সম্ভাব্য সমাধানগুলি বিশ্লেষণ করব৷
বর্তমান কোডের মূল সমস্যাগুলির সমাধান করে, যেমন ইভেন্ট হ্যান্ডলিং এবং ইউআরএল নির্মাণ, আপনি দেখতে পাবেন কিভাবে ছোট ছোট পরিবর্তনগুলি কার্যকারিতাকে উল্লেখযোগ্যভাবে উন্নত করতে পারে। এই জ্ঞানের সাহায্যে, আপনি ফাইল পাথগুলি পরিচালনা করতে এবং গতিশীল ওয়েব অ্যাপ্লিকেশন তৈরি করতে আরও ভালভাবে সজ্জিত হবেন।
আদেশ | ব্যবহারের উদাহরণ |
---|---|
PSPDFKit.load() | এই কমান্ডটি পৃষ্ঠায় একটি নির্দিষ্ট পাত্রে একটি PDF নথি লোড করতে ব্যবহৃত হয়। এটি PSPDFKit লাইব্রেরির জন্য নির্দিষ্ট এবং এর জন্য PDF URL এবং কন্টেইনারের বিশদ প্রয়োজন। এই ক্ষেত্রে, ব্যবহারকারী নির্বাচনের উপর ভিত্তি করে পিডিএফ ভিউয়ারকে গতিশীলভাবে রেন্ডার করার জন্য এটি অত্যন্ত গুরুত্বপূর্ণ। |
document.addEventListener() | এই ফাংশনটি ডকুমেন্টে একটি ইভেন্ট হ্যান্ডলার সংযুক্ত করে, এই ক্ষেত্রে, যখন DOM সম্পূর্ণরূপে লোড হয় তখন কোডটি কার্যকর করতে। এটি নিশ্চিত করে যে পৃষ্ঠার উপাদানগুলি যেমন ড্রপডাউন এবং পিডিএফ ভিউয়ার স্ক্রিপ্টের সাথে ইন্টারঅ্যাক্ট করার আগে প্রস্তুত। |
yearDropdown.addEventListener() | নির্বাচিত বছরে পরিবর্তনগুলি সনাক্ত করতে ড্রপডাউন উপাদানে একটি ইভেন্ট শ্রোতা নিবন্ধন করে৷ এটি একটি ফাংশন ট্রিগার করে যা পিডিএফ ফাইল পাথ আপডেট করে যখনই ব্যবহারকারী ড্রপডাউন নির্বাচন পরিবর্তন করে। |
path.join() | এই Node.js-নির্দিষ্ট কমান্ডটি নিরাপদে ফাইল পাথ সংযুক্ত করতে ব্যবহৃত হয়। ব্যাক-এন্ড সমাধানে সঠিক পিডিএফ ফাইল পরিবেশনের জন্য গতিশীল ফাইল পাথ তৈরি করার সময় এটি বিশেষভাবে গুরুত্বপূর্ণ। |
res.sendFile() | Express.js ফ্রেমওয়ার্কের অংশ, এই কমান্ড সার্ভারে অবস্থিত পিডিএফ ফাইলটি ক্লায়েন্টের কাছে পাঠায়। এটি path.join() দ্বারা নির্মিত ফাইল পাথ ব্যবহার করে এবং ব্যবহারকারীর ড্রপডাউন নির্বাচনের উপর ভিত্তি করে উপযুক্ত ফাইল পরিবেশন করে। |
expect() | একটি জেস্ট টেস্টিং কমান্ড যা একটি ফাংশনের প্রত্যাশিত ফলাফল জাহির করতে ব্যবহৃত হয়। এই ক্ষেত্রে, এটি ড্রপডাউনগুলিতে ব্যবহারকারীর নির্বাচনের উপর ভিত্তি করে সঠিক PDF URL লোড হয়েছে কিনা তা পরীক্ষা করে। |
req.params | Express.js-এ, এই কমান্ডটি URL থেকে প্যারামিটারগুলি পুনরুদ্ধার করতে ব্যবহৃত হয়। ব্যাক-এন্ডের প্রেক্ষাপটে, এটি পিডিএফ-এর জন্য সঠিক ফাইল পাথ তৈরি করতে নির্বাচিত বছর এবং মাস টানে। |
container: "#pspdfkit" | এই বিকল্পটি HTML ধারকটি নির্দিষ্ট করে যেখানে PDF লোড করা উচিত। এটি PSPDFKit.load() পদ্ধতিতে পিডিএফ ভিউয়ার রেন্ডার করার জন্য নিবেদিত পৃষ্ঠার বিভাগটি সংজ্ঞায়িত করতে ব্যবহৃত হয়। |
console.error() | ত্রুটি পরিচালনার জন্য ব্যবহৃত, কিছু ভুল হলে এই কমান্ডটি কনসোলে একটি ত্রুটি বার্তা লগ করে, যেমন ড্রপডাউনে একটি অনুপস্থিত নির্বাচন বা PSPDFKit লাইব্রেরি সঠিকভাবে লোড হচ্ছে না। |
জাভাস্ক্রিপ্ট দিয়ে ডায়নামিক পিডিএফ লোডিং বোঝা
আগের উপস্থাপিত স্ক্রিপ্ট দুটি ড্রপডাউন মেনুর মাধ্যমে ব্যবহারকারীর ইনপুটের উপর ভিত্তি করে একটি PDF ফাইলকে গতিশীলভাবে আপডেট করার জন্য কাজ করে। একটি মেনু ব্যবহারকারীদের একটি বছর নির্বাচন করতে দেয়, এবং অন্যটি একটি মাস নির্বাচন করার অনুমতি দেয়। যখন ব্যবহারকারী উভয় ড্রপডাউনে একটি নির্বাচন করে, জাভাস্ক্রিপ্ট কোড একটি ইভেন্ট লিসেনারকে ট্রিগার করে যা PDF এর ফাইল পাথ আপডেট করে। এখানে মূল ফাংশন হল PSPDFKit.load(), যা ওয়েব পৃষ্ঠায় মনোনীত পাত্রে PDF রেন্ডার করার জন্য দায়ী। এই পদ্ধতিটি অ্যাপ্লিকেশনগুলির জন্য অপরিহার্য যেখানে ব্যবহারকারীদের একাধিক নথির মাধ্যমে দক্ষতার সাথে নেভিগেট করতে হবে।
শুরু করার জন্য, পৃষ্ঠাটি লোড হওয়ার সময় প্রদর্শিত হওয়ার জন্য ডিফল্ট পিডিএফ ফাইল URL সেট আপ করে স্ক্রিপ্টটি শুরু হয়। এটি ব্যবহার করে অর্জন করা হয় document.addEventListener() ফাংশন, যা নিশ্চিত করে যে কোনো স্ক্রিপ্ট এক্সিকিউশনের আগে DOM সম্পূর্ণ লোড হয়েছে। দুটি ড্রপডাউন মেনু তাদের নিজ নিজ এলিমেন্ট আইডি ব্যবহার করে চিহ্নিত করা হয়: "yearDropdown" এবং "monthDropdown"। এই উপাদানগুলি এমন পয়েন্ট হিসাবে কাজ করে যেখানে ব্যবহারকারীরা তাদের নির্বাচনগুলি ইনপুট করতে পারে এবং তারা গতিশীল ফাইল পাথ গঠনের অবিচ্ছেদ্য অংশ যা সঠিক পিডিএফ লোড করার দিকে পরিচালিত করে।
যখন কোন একটি ড্রপডাউনে একটি পরিবর্তন ঘটে, আপডেট পিডিএফ() ফাংশন বলা হয়। এই ফাংশনটি ব্যবহারকারীর দ্বারা নির্বাচিত মানগুলি পুনরুদ্ধার করে, স্ট্রিং ইন্টারপোলেশন ব্যবহার করে একটি নতুন URL তৈরি করে এবং এই URLটিকে PDF লোডারে বরাদ্দ করে৷ গুরুত্বপূর্ণ অংশটি নিশ্চিত করা হচ্ছে যে ফাইলটি লোড করার চেষ্টা করার আগে বছর এবং মাস উভয়ই বৈধ, কারণ অসম্পূর্ণ নির্বাচন একটি ত্রুটির কারণ হতে পারে। যে ক্ষেত্রে উভয় মান উপলব্ধ, স্ক্রিপ্ট "year_month_filename.pdf" এর প্যাটার্ন ব্যবহার করে URL তৈরি করে। এটি তারপর এই নতুন উত্পন্ন URL পাস করে PSPDFKit.load() আপডেট করা PDF প্রদর্শনের পদ্ধতি।
ব্যাক-এন্ড উদাহরণ ব্যবহার করে Node.js এক্সপ্রেস সহ সার্ভার সাইডে ইউআরএল নির্মাণ অফলোড করে আরও এক ধাপ এগিয়ে যায়। এখানে, দ req.params অবজেক্ট URL থেকে বছর এবং মাস বের করে এবং path.join() মেথড ব্যবহারকারীকে ফেরত পাঠানোর জন্য সঠিক ফাইল পাথ তৈরি করে। এই সার্ভার-সাইড লজিক দৃঢ়তা এবং নিরাপত্তার আরেকটি স্তর যোগ করে, নিশ্চিত করে যে সঠিক পিডিএফ সর্বদা পরিবেশিত হয়। ফাইল পাথ এবং ব্যবহারকারীর ইনপুট পরিচালনা করার এই মডুলার পদ্ধতিটি বৃহত্তর অ্যাপ্লিকেশনগুলির জন্য নমনীয়তা এবং মাপযোগ্যতা প্রদান করে যার জন্য ব্যাপক নথি ব্যবস্থাপনার প্রয়োজন হয়।
জাভাস্ক্রিপ্ট ড্রপডাউন সহ পিডিএফ ফাইল রিলোড পরিচালনা করা
এই পদ্ধতিতে, আমরা ড্রপডাউন পরিবর্তনগুলি পরিচালনা করতে এবং পিডিএফ পুনরায় লোড করতে মৌলিক ভ্যানিলা জাভাস্ক্রিপ্ট ব্যবহার করে গতিশীল URL আপডেটের সমাধান করার উপর ফোকাস করি। আমরা নিশ্চিত করব যে স্ক্রিপ্টটি মডুলার থাকবে এবং অনুপস্থিত নির্বাচনগুলির জন্য ত্রুটি হ্যান্ডলিং অন্তর্ভুক্ত রয়েছে।
// Front-end JavaScript solution using event listeners
document.addEventListener("DOMContentLoaded", () => {
const yearDropdown = document.getElementById("yearDropdown");
const monthDropdown = document.getElementById("monthDropdown");
let currentDocumentUrl = "https://www.dhleader.org/1967_April_DearbornHeightsLeader.pdf";
function loadPdf(url) {
if (PSPDFKit && typeof PSPDFKit === "object") {
PSPDFKit.load({ container: "#pspdfkit", document: url });
} else {
console.error("PSPDFKit library not found");
}
}
function updatePdf() {
const year = yearDropdown.value;
const month = monthDropdown.value;
if (year && month) {
const newUrl = \`https://www.dhleader.org/\${year}_\${month}_DearbornHeightsLeader.pdf\`;
loadPdf(newUrl);
} else {
console.error("Both year and month must be selected.");
}
}
yearDropdown.addEventListener("change", updatePdf);
monthDropdown.addEventListener("change", updatePdf);
loadPdf(currentDocumentUrl);
});
Node.js সহ ব্যাকএন্ড-চালিত পিডিএফ লোডিং সলিউশন
এই ব্যাকএন্ড সমাধানটি ড্রপডাউন ইনপুটগুলির উপর ভিত্তি করে পিডিএফ ফাইলকে গতিশীলভাবে পরিবেশন করতে Node.js এবং Express নিয়োগ করে। ইউআরএল নির্মাণ যুক্তি সার্ভার-সাইড ঘটছে, নিরাপত্তা উন্নত এবং উদ্বেগ বিচ্ছেদ.
// Backend Node.js with Express - Server-side logic
const express = require('express');
const app = express();
const path = require('path');
app.get('/pdf/:year/:month', (req, res) => {
const { year, month } = req.params;
const filePath = path.join(__dirname, 'pdfs', \`\${year}_\${month}_DearbornHeightsLeader.pdf\`);
res.sendFile(filePath);
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
ড্রপডাউন নির্বাচন এবং PDF লোডিং যাচাই করার জন্য ইউনিট পরীক্ষা
ফ্রন্ট-এন্ড এবং ব্যাক-এন্ড লজিক প্রত্যাশিতভাবে কাজ করে তা নিশ্চিত করতে, আমরা মোচা এবং চাই (Node.js-এর জন্য) বা সামনের প্রান্তের জন্য জেস্ট ব্যবহার করে ইউনিট পরীক্ষা লিখতে পারি। এই পরীক্ষাগুলি ব্যবহারকারীর মিথস্ক্রিয়া অনুকরণ করে এবং ড্রপডাউন মানগুলির উপর ভিত্তি করে সঠিক পিডিএফ লোডগুলি যাচাই করে৷
// Front-end Jest test for dropdown interaction
test('should load correct PDF on dropdown change', () => {
document.body.innerHTML = `
<select id="yearDropdown"> <option value="1967">1967</option> </select>`;
const yearDropdown = document.getElementById("yearDropdown");
yearDropdown.value = "1967";
updatePdf();
expect(loadPdf).toHaveBeenCalledWith("https://www.dhleader.org/1967_April_DearbornHeightsLeader.pdf");
});
জাভাস্ক্রিপ্ট ইভেন্ট শ্রোতাদের সাথে পিডিএফ মিথস্ক্রিয়া উন্নত করা
পিডিএফ ভিউয়ারের মতো গতিশীল সামগ্রীর সাথে কাজ করার সময়, একটি গুরুত্বপূর্ণ দিক হল ব্যবহারকারীর মিথস্ক্রিয়া কার্যকরভাবে পরিচালনা করা। ইভেন্ট শ্রোতারা মসৃণ, প্রতিক্রিয়াশীল আচরণ নিশ্চিত করতে গুরুত্বপূর্ণ ভূমিকা পালন করে যখন ব্যবহারকারীরা ড্রপডাউন বা অন্যান্য ইনপুট ক্ষেত্রে নির্বাচন করে। এই ক্ষেত্রে, জাভাস্ক্রিপ্ট ইভেন্ট শ্রোতারা পছন্দ করে পরিবর্তন এবং DOMContentLoaded যখন একজন ব্যবহারকারী একটি বছর বা মাস নির্বাচন করে তখন সিস্টেমটিকে অবিলম্বে প্রতিক্রিয়া জানানোর অনুমতি দেয়, নিশ্চিত করে যে সঠিক ফাইল পাথ আপডেট করা হয়েছে এবং পিডিএফ নির্বিঘ্নে রিফ্রেশ করা হয়েছে।
আরেকটি অপরিহার্য ধারণা হল ত্রুটি পরিচালনা। যেহেতু ব্যবহারকারীরা সর্বদা বৈধ নির্বাচন নাও করতে পারে বা ড্রপডাউনগুলি অনির্বাচিত রেখে যেতে পারে, তাই অ্যাপ্লিকেশনটি যাতে ভেঙে না যায় তা নিশ্চিত করা গুরুত্বপূর্ণ। সঠিক ত্রুটি বার্তা বাস্তবায়ন, যেমন সঙ্গে console.error, ডেভেলপারদের সমস্যাগুলি ডিবাগ করার অনুমতি দেয় এবং সাইটের সামগ্রিক কর্মক্ষমতা প্রভাবিত না করে কী ভুল হয়েছে তা বুঝতে ব্যবহারকারীদের। এই দিকটি অত্যন্ত গুরুত্বপূর্ণ, বিশেষ করে যখন পিডিএফের মতো বড় ফাইল লোড করা হয় যা 500MB এবং 1.5GB এর মধ্যে হতে পারে।
নিরাপত্তা এবং কর্মক্ষমতা এছাড়াও গুরুত্বপূর্ণ. যখন গতিশীলভাবে ব্যবহারকারীর ইনপুটের উপর ভিত্তি করে ইউআরএল তৈরি করা হয়, যেমন https://www.dhleader.org/{year}_{month}_DearbornHeightsLeader.pdf, ফ্রন্ট-এন্ড এবং ব্যাক-এন্ড উভয় ক্ষেত্রেই ইনপুট যাচাই করার জন্য যত্ন নেওয়া আবশ্যক। এটি নিশ্চিত করে যে ভুল বা দূষিত ইনপুট ভাঙা ফাইল পাথ বা সংবেদনশীল ডেটা প্রকাশ করে না। লিভারেজ করে Node.js এবং সার্ভার-সাইড ইউআরএল জেনারেশন, সমাধানটি আরও শক্তিশালী হয়ে ওঠে, ওয়েব অ্যাপ্লিকেশনগুলিতে গতিশীল ফাইল লোডিং পরিচালনা করার জন্য একটি মাপযোগ্য উপায় প্রদান করে।
ডায়নামিক পিডিএফ লোডিং সম্পর্কে সাধারণ প্রশ্ন
- একটি ড্রপডাউন পরিবর্তন করা হলে আমি কিভাবে পিডিএফ পুনরায় লোড ট্রিগার করব?
- আপনি ব্যবহার করতে পারেন addEventListener সঙ্গে ফাংশন change একটি ব্যবহারকারী যখন ড্রপডাউন থেকে একটি নতুন বিকল্প নির্বাচন করে তা শনাক্ত করতে এবং সেই অনুযায়ী PDF আপডেট করার জন্য ইভেন্ট।
- ব্রাউজারে পিডিএফ রেন্ডার করতে আমি কোন লাইব্রেরি ব্যবহার করতে পারি?
- PSPDFKit পিডিএফ রেন্ডার করার জন্য একটি জনপ্রিয় জাভাস্ক্রিপ্ট লাইব্রেরি, এবং আপনি এটি ব্যবহার করে একটি নির্দিষ্ট পাত্রে একটি পিডিএফ লোড করতে পারেন PSPDFKit.load().
- পিডিএফ লোড না হলে আমি কীভাবে ত্রুটিগুলি পরিচালনা করব?
- ব্যবহার করে সঠিক ত্রুটি হ্যান্ডলিং বাস্তবায়ন console.error পিডিএফ লোড করতে ব্যর্থ হলে বা ইউআরএল জেনারেশনে সমস্যা থাকলে লগ ইন করতে।
- আমি কিভাবে বড় PDF ফাইল লোডিং অপ্টিমাইজ করতে পারি?
- অলস লোডিং কৌশল ব্যবহার করে এবং যেখানে সম্ভব পিডিএফ কম্প্রেস করে, অথবা ফাইল সার্ভার-সাইড তৈরি করে Node.js দক্ষ ডেলিভারি এবং কর্মক্ষমতা নিশ্চিত করতে।
- আমি কি ড্রপডাউন নির্বাচন যাচাই করতে পারি?
- হ্যাঁ, আপনার যাচাই করা উচিত যে আপনার ভিতরে জাভাস্ক্রিপ্ট শর্তগুলি ব্যবহার করে নতুন ফাইল পাথ তৈরি করার আগে বছর এবং মাস উভয়ই নির্বাচন করা হয়েছে updatePdf() ফাংশন
ডাইনামিক পিডিএফ রিলোডিং নিয়ে চূড়ান্ত চিন্তা
ড্রপডাউন থেকে ব্যবহারকারীর ইনপুটের উপর ভিত্তি করে একটি PDF ভিউয়ার আপডেট করা একটি ওয়েবসাইটে ইন্টারঅ্যাক্টিভিটি বাড়ানোর একটি চমৎকার উপায়। এই পদ্ধতিটি, ধারণায় সহজ হলেও, সম্ভাব্য ত্রুটি এড়াতে URL নির্মাণ, ইভেন্ট পরিচালনা এবং ইনপুট যাচাইকরণের মতো বিশদগুলিতে সতর্ক মনোযোগের প্রয়োজন।
JavaScript ব্যবহার করে এবং PSPDFKit-এর মতো একীভূত টুল ব্যবহার করে, আপনি একটি মসৃণ এবং ব্যবহারকারী-বান্ধব অভিজ্ঞতা তৈরি করতে পারেন। আপনি আপনার কোডিং যাত্রায় অগ্রসর হওয়ার সাথে সাথে মনে রাখবেন যে কার্যকারিতা এবং কর্মক্ষমতা উভয়ের উপর ফোকাস করা আপনার ওয়েব অ্যাপ্লিকেশনগুলির জন্য আরও ভাল মাপযোগ্যতা এবং ব্যবহারযোগ্যতা নিশ্চিত করে।
অপরিহার্য সম্পদ এবং রেফারেন্স
- মোজিলার MDN ওয়েব ডক্সের এই সংস্থানটি জাভাস্ক্রিপ্ট ব্যবহার করার বিষয়ে একটি বিস্তৃত নির্দেশিকা প্রদান করে, ইভেন্ট শ্রোতা, DOM ম্যানিপুলেশন এবং ত্রুটি পরিচালনার মতো বিষয়গুলিকে কভার করে৷ নতুন এবং অভিজ্ঞ ডেভেলপারদের জন্য একইভাবে একটি চমৎকার রেফারেন্স। MDN ওয়েব ডক্স - জাভাস্ক্রিপ্ট
- একটি ওয়েবপেজে পিডিএফ দেখার কার্যকারিতা বাস্তবায়ন করতে চাইছেন এমন ডেভেলপারদের জন্য, PSPDFKit-এর অফিসিয়াল ডকুমেন্টেশন একটি অপরিহার্য সম্পদ। এটি তাদের লাইব্রেরি ব্যবহার করে পিডিএফ রেন্ডার করার জন্য উদাহরণ এবং সেরা অনুশীলন প্রদান করে। PSPDFKit ওয়েব ডকুমেন্টেশন
- এই নিবন্ধটি জাভাস্ক্রিপ্ট ইভেন্ট পরিচালনার একটি বিশদ ভূমিকা প্রস্তাব করে, ব্যবহারকারীর ইনপুটের উপর ভিত্তি করে গতিশীলভাবে আপডেট করার একটি গুরুত্বপূর্ণ ধারণা। ইভেন্ট শ্রোতাদের কীভাবে লাভ করা যায় তা বোঝার জন্য এটি অত্যন্ত বাঞ্ছনীয়। জাভাস্ক্রিপ্ট ইভেন্ট লিসেনার টিউটোরিয়াল
- Node.js এক্সপ্রেস ডকুমেন্টেশন সার্ভার-সাইড ইউআরএল জেনারেশন, ফাইল হ্যান্ডলিং এবং এরর ম্যানেজমেন্ট বোঝার জন্য একটি দৃঢ় ভিত্তি প্রদান করে, যা প্রজেক্টের ব্যাক-এন্ড দিকটির জন্য অপরিহার্য। Express.js API ডকুমেন্টেশন