Node.js میں غیر متوقع ٹوکن کی خرابیوں کا ازالہ کرنا
تصور کریں کہ آپ نے اپنا Node.js سرور ترتیب دیا ہے اور لگتا ہے کہ سب کچھ تیار ہے۔ لیکن جیسے ہی آپ کوڈ چلاتے ہیں، ایک غیر متوقع غلطی ہر چیز کو روک دیتی ہے۔ 😕 یہ ڈویلپرز کے لیے ایک عام مایوسی ہے، خاص طور پر جب غلطی کا پیغام خفیہ یا پیچیدہ محسوس ہوتا ہے۔
ایسا ہی ایک مسئلہ، "package.json کو پارس کرنے میں خرابی: غیر متوقع ٹوکن،" اکثر JSON نحو میں ایک چھوٹی سی غلطی کی وجہ سے ہوتا ہے۔ سرور، صاف JSON کی توقع کر رہا ہے، رن ٹائم کے وقت ایک خرابی پھینک دیتا ہے، جو یہ جانے بغیر کہ کہاں دیکھنا ہے اس کا ازالہ کرنا مشکل ہو سکتا ہے۔
اس صورت میں، غلطی Node.js کے اندرونی ماڈیولز میں لائن 93 پر واپس آتی ہے اور اس کی طرف اشارہ کرتی ہے۔ package.json فائل یہ JSON فائل آپ کے پروجیکٹ کے انحصار اور کنفیگریشن کے انتظام کے لیے ضروری ہے۔ یہاں تک کہ ایک چھوٹی سی غلطی جیسے غلط جگہ پر کوما یا گمشدہ تسمہ بھی فائل کو توڑ سکتا ہے، جو آپ کے سرور کو چلنے سے روک سکتا ہے۔
آئیے اس مسئلے کی نشاندہی اور حل کرنے کے لیے عملی اقدامات سے گزرتے ہیں۔ ہم JSON کی غلطیوں کو مؤثر طریقے سے ڈیبگ کرنے کے طریقے پر توجہ مرکوز کریں گے، اس بات کو یقینی بناتے ہوئے کہ آپ کا سرور دوبارہ ٹریک پر آجائے۔ 🛠️ کچھ محتاط معائنہ کے ساتھ، آپ ان مسائل کو حل کرنے اور اپنی ترقی کو آسانی سے جاری رکھنے کے قابل ہو جائیں گے۔
حکم | وضاحت اور استعمال |
---|---|
path.join() | متعدد پاتھ سیگمنٹس کو سنگل پاتھ سٹرنگ میں جوڑتا ہے۔ پیکیج.json فائل کے لیے پلیٹ فارم سے آزاد راستہ بنانے کے لیے یہاں استعمال کیا جاتا ہے، جو آپریٹنگ سسٹمز میں مطابقت کو یقینی بناتا ہے۔ |
fs.readFileSync() | ایک فائل کو مطابقت پذیری سے پڑھتا ہے اور اس کے مواد کو سٹرنگ کے طور پر واپس کرتا ہے۔ یہ آسان کاموں کے لیے مفید ہے جہاں فائل کے پڑھنے کا انتظار کرنا قابل قبول ہے، جیسا کہ ہم وقت ساز پارسنگ مثال میں ہے۔ |
JSON.parse() | JSON سٹرنگ کو JavaScript آبجیکٹ میں تبدیل کرتا ہے۔ package.json فائل کے مشمولات کی تشریح کے لیے ضروری ہے، لیکن اگر JSON غلط ہے تو SyntaxError پھینک دیتا ہے۔ |
fs.promises.readFile() | فائلوں کو متضاد طور پر پڑھنے کا وعدہ پر مبنی طریقہ۔ یہ بڑی فائلوں کو ہینڈل کرنے کی اجازت دیتا ہے یا دوسرے آپریشنز کو بلاک کیے بغیر طویل آپریشنز، جدید async کوڈ کے لیے مثالی ہے۔ |
if (error instanceof SyntaxError) | چیک کرتا ہے کہ آیا کوئی خامی خاص طور پر SyntaxError ہے، جو JSON پارسنگ کے مسائل کو دوسری قسم کی غلطیوں سے الگ شناخت کرنے میں مدد کرتی ہے۔ |
jest.spyOn() | جانچ کے دوران مختلف فائل کے مواد کی نقل کرنے کے لیے، اس معاملے میں fs.readFileSync، ایک مخصوص طریقہ کا مذاق اڑاتی ہے۔ یہ خاص طور پر یونٹ ٹیسٹنگ میں مفید ہے تاکہ حقیقی فائلوں میں ردوبدل کیے بغیر غلطی سے نمٹنے کے مختلف منظرناموں کو چیک کیا جا سکے۔ |
describe() | ایک جیسٹ فنکشن جو متعلقہ ٹیسٹ کیسز کو گروپ کرنے کے لیے استعمال کیا جاتا ہے۔ یہ منطقی طور پر ٹیسٹوں کو منظم کرتا ہے اور پڑھنے کی اہلیت کو بہتر بناتا ہے، یہاں parsePackageJSON فنکشن کے لیے تمام ٹیسٹوں کو گروپ کرتا ہے۔ |
expect().toThrow() | اس بات پر زور دینے کے لیے Jest میں استعمال کیا جاتا ہے کہ ایک فنکشن غلطی کرتا ہے۔ یہاں، یہ چیک کرتا ہے کہ غلط JSON کو پارس کرنا SyntaxError کو متحرک کرتا ہے، جس سے مناسب غلطی سے نمٹنے کی تصدیق ہوتی ہے۔ |
console.error() | کنسول میں خرابی کے پیغامات دکھاتا ہے، جس سے ڈویلپرز کو مسائل کی فوری شناخت کرنے میں مدد ملتی ہے۔ اسے یہاں JSON نحو کی غلطیوں اور دیگر غیر متوقع مسائل کی تفصیلات کو لاگ کرنے کے لیے استعمال کیا جاتا ہے۔ |
trim() | سٹرنگ کے دونوں سروں سے خالی جگہ کو ہٹاتا ہے۔ تجزیہ کرنے سے پہلے، یہ چیک کرتا ہے کہ آیا JSON فائل کا مواد خالی ہے یا صرف وائٹ اسپیس، غلط ڈیٹا کو پارس کرنے کی کوشش سے غلطیوں کو روکتا ہے۔ |
Node.js JSON پارسنگ ایرر سلوشنز کو سمجھنا
اوپر پیش کردہ اسکرپٹ ایک مخصوص مسئلے کو حل کرتی ہیں جو بہت سے ڈویلپرز کو Node.js کے ساتھ کام کرتے وقت درپیش ہوتے ہیں: ایک غیر متوقع ٹوکن کی خرابی۔ package.json فائل میں۔ یہ غلطی عام طور پر اس وقت ظاہر ہوتی ہے جب JSON فائل میں کوئی غلط کریکٹر یا نحو کی غلطی ہو، جو Node.js کو اسے صحیح طریقے سے پڑھنے سے روکتی ہے۔ اس سے نمٹنے کے لیے، پہلا حل پیکج.json فائل کو مطابقت پذیر طریقے سے پڑھتا ہے، یعنی پروگرام اس وقت تک رکے گا جب تک کہ فائل کا مواد مکمل طور پر پڑھا نہ جائے۔ JSON.parse طریقہ استعمال کرتے ہوئے، اسکرپٹ فائل کے مواد کو JavaScript آبجیکٹ میں تبدیل کرنے کی کوشش کرتا ہے۔ اگر تجزیہ ناکام ہوجاتا ہے تو، ایک غلطی کا پیغام JSON میں درست نحوی مسئلے کی نشاندہی کرتے ہوئے وضاحت فراہم کرتا ہے۔ یہ نقطہ نظر خاص طور پر چھوٹی ایپلی کیشنز کے لیے مفید ہے جہاں ہم وقت ساز سلوک قابل قبول ہے، حالانکہ یہ اعلی کارکردگی والے ماحول کے لیے کم مثالی ہے۔ 🛠️
دوسرا حل ایک میں بدل جاتا ہے۔ متضاد نقطہ نظر, JSON فائل کو پڑھنے کے لیے fs.promises.readFile کا استعمال کرنا۔ اس صورت میں، async/await فنکشنز Node.js کو فائل پڑھنے کے دوران دیگر آپریشنز کرنے کی اجازت دیتے ہیں، جس سے ایپلیکیشن زیادہ موثر اور قابل توسیع ماحول کے لیے موزوں ہوتی ہے۔ تجزیہ کرنے سے پہلے، اسکرپٹ یہ بھی چیک کرتا ہے کہ آیا فائل خالی ہے یا اس میں صرف وائٹ اسپیس ہے۔ توثیق کا یہ آسان مرحلہ خالی ڈیٹا کو پارس کرنے کی کوششوں سے گریز کرکے غیر متوقع کریشوں کو روک سکتا ہے۔ اگر تصریف کے دوران کوئی خرابی پیش آتی ہے، تو اسکرپٹ اسے پکڑ لیتا ہے، خاص طور پر نحوی غلطیوں کی جانچ پڑتال کرتا ہے۔ مختلف قسم کی خرابیوں کو الگ کر کے، یہ حل ڈویلپر کو واضح فیڈ بیک فراہم کرتا ہے، جس سے خرابیوں کا سراغ لگانا تیز ہو سکتا ہے۔
تیسرے حصے میں، ہم جیسٹ فریم ورک کا استعمال کرتے ہوئے ایک یونٹ ٹیسٹ بناتے ہیں تاکہ اس بات کی تصدیق کی جا سکے کہ ہمارے JSON پارسنگ سلوشنز توقع کے مطابق کام کرتے ہیں۔ یہ ٹیسٹ درست اور غلط JSON فائلوں کی تقلید کرتا ہے۔ مثال کے طور پر، ہم ایک ایسے منظر نامے کا مذاق اڑاتے ہیں جہاں JSON میں ایک اضافی کوما ہوتا ہے، جس کی وجہ سے نحوی خرابی ہوتی ہے۔ expect().toThrow کے ذریعے، ہم اس بات کی تصدیق کر سکتے ہیں کہ پارسنگ فنکشن میں ہماری ایرر ہینڈلنگ ان مسائل کی صحیح شناخت اور رپورٹ کرتی ہے۔ اس طرح کے یونٹ ٹیسٹ ترقی میں انمول ہیں، اس عمل میں ابتدائی غلطیوں کو پکڑنے میں مدد کرتے ہیں اور یہ یقینی بناتے ہیں کہ ہمارا کوڈ لچکدار ہے۔ یہ خاص طور پر دوسرے ڈویلپرز کے ساتھ تعاون کرتے وقت یا کوڈ کو پروڈکشن میں تعینات کرتے وقت مفید ہے، کیونکہ یہ غیر متوقع کیڑوں کو صارفین پر اثر انداز ہونے سے روکنے میں مدد کرتا ہے۔
مجموعی طور پر، یہ حل Node.js میں JSON پارسنگ کی غلطیوں سے نمٹنے کے لیے ایک مضبوط فریم ورک فراہم کرتے ہیں، جس سے ڈویلپرز کو ان کے پروجیکٹ کی ضروریات کی بنیاد پر ہم وقت ساز اور غیر مطابقت پذیر طریقوں کے درمیان انتخاب کرنے کی لچک ملتی ہے۔ JSON ڈیٹا کی توثیق اور جانچ کرکے، ہم اپنے کوڈ بیس کی سالمیت کو یقینی بناتے ہیں، جو رن ٹائم کی غلطیوں کو روک سکتا ہے جو بصورت دیگر صارف کے تجربے میں خلل ڈال سکتی ہیں۔ واضح ایرر ہینڈلنگ، async فعالیت، اور یونٹ ٹیسٹنگ کا امتزاج Node.js کنفیگریشن فائلوں سے نمٹنے کے لیے ایک بہترین طریقہ کار پیدا کرتا ہے، بالآخر وقت کی بچت اور مایوسی کو کم کرتا ہے۔ 🎉
ماڈیولر بیک اینڈ سلوشنز کے ساتھ Node.js میں JSON پارسنگ کی خرابی کو حل کرنا
غلطی سے نمٹنے اور JSON کی توثیق کے ساتھ Node.js سرور سائیڈ جاوا اسکرپٹ حل
// Solution 1: Basic JSON File Validation and Parsing
// This script reads and parses the package.json file, with error handling for JSON parsing
const fs = require('fs');
const path = require('path');
try {
// Define the path to the package.json file
const filePath = path.join(__dirname, 'package.json');
// Read file content
const fileContent = fs.readFileSync(filePath, 'utf-8');
// Attempt to parse JSON content
const jsonData = JSON.parse(fileContent);
console.log('JSON parsed successfully:', jsonData);
} catch (error) {
// Catch any JSON parsing errors
if (error instanceof SyntaxError) {
console.error('Invalid JSON format:', error.message);
} else {
console.error('Unexpected error:', error.message);
}
}
Async طریقوں اور ان پٹ کی توثیق کا استعمال کرتے ہوئے JSON پارسنگ کی خرابی کو حل کرنا
بہتر خرابی سے نمٹنے اور ان پٹ کی توثیق کے ساتھ Node.js غیر مطابقت پذیر نقطہ نظر
// Solution 2: Using async/await with additional validation for package.json content
const fs = require('fs').promises;
const path = require('path');
async function validateAndParseJSON() {
try {
const filePath = path.join(__dirname, 'package.json');
// Read file asynchronously
const fileContent = await fs.readFile(filePath, 'utf-8');
// Check if file content is not empty before parsing
if (!fileContent.trim()) {
throw new Error('File is empty or whitespace only');
}
// Parse the JSON data
const jsonData = JSON.parse(fileContent);
console.log('JSON parsed successfully:', jsonData);
} catch (error) {
if (error instanceof SyntaxError) {
console.error('JSON syntax error:', error.message);
} else {
console.error('Error reading JSON:', error.message);
}
}
}
validateAndParseJSON();
JSON پارسنگ کی توثیق کے لیے یونٹ ٹیسٹ
JSON پارسنگ اور ایرر ہینڈلنگ کی توثیق کرنے کے لیے Node.js کے لیے Jest کا استعمال
// Solution 3: Unit test using Jest to validate JSON parsing behavior
const fs = require('fs');
const path = require('path');
// Function to test
function parsePackageJSON() {
const filePath = path.join(__dirname, 'package.json');
const fileContent = fs.readFileSync(filePath, 'utf-8');
return JSON.parse(fileContent);
}
// Jest unit test
describe('parsePackageJSON', () => {
it('should parse valid JSON without errors', () => {
expect(() => parsePackageJSON()).not.toThrow();
});
it('should throw error for invalid JSON', () => {
// Mock invalid JSON scenario
jest.spyOn(fs, 'readFileSync').mockReturnValue('{"name": "project",}');
expect(() => parsePackageJSON()).toThrow(SyntaxError);
});
});
Node.js میں JSON پارسنگ کی خرابیوں کی تشخیص: ایک گہری نظر
Node.js ایپلی کیشنز کو ٹربل شوٹنگ کرنے کا ایک اہم پہلو JSON پارسنگ کی غلطیوں کی اہمیت کو سمجھنا ہے، خاص طور پر package.json فائل یہ فائل کسی بھی Node.js پروجیکٹ کے لیے مرکزی ترتیب کے طور پر کام کرتی ہے، انحصار، اسکرپٹس، اور میٹا ڈیٹا کے بارے میں معلومات کو ذخیرہ کرتی ہے۔ اس فائل میں خرابیاں سرور کے آغاز کو روک سکتی ہیں، جس کی وجہ سے خرابی کے پیغامات پیدا ہوتے ہیں جو ڈویلپرز کے لیے الجھن کا باعث بن سکتے ہیں۔ مثال کے طور پر، گمشدہ اقتباسات یا اضافی کوما JSON نحو کو توڑ سکتے ہیں، کیونکہ JSON فارمیٹ خاص طور پر سخت ہے۔ Node.js صحیح ساختہ JSON پر انحصار کرتا ہے، لہذا فارمیٹنگ کی ایک چھوٹی سی غلطی بھی اس طرح کے مسائل کا باعث بن سکتی ہے "غیر متوقع ٹوکن" بہت سے ڈویلپرز کو ماڈیول لوڈ کرتے وقت پیش آنے والی غلطی۔
JSON فائلوں میں خرابیوں کو روکنے کے لیے، JSON توثیق کار یا بلٹ ان JSON فارمیٹنگ سپورٹ کے ساتھ ایڈیٹر کا استعمال مددگار ثابت ہو سکتا ہے۔ یہ ٹولز ریئل ٹائم میں غلطیوں کو نمایاں کرتے ہیں، اس بات کو یقینی بناتے ہوئے کہ ہر کردار JSON نحوی اصولوں کی پابندی کرتا ہے۔ مزید برآں، جیسے کمانڈز سے خود کو واقف کرنا فائدہ مند ہے۔ JSON.parse اور try/catch غلطی کو سنبھالنا، کیونکہ وہ غلطیوں کو جلد پکڑنے میں مدد کرتے ہیں۔ جیسٹ جیسے ٹولز کے ساتھ یونٹ ٹیسٹ لکھنا مختلف پارسنگ منظرناموں کی تقلید کرکے آپ کے کوڈ کی لچک کو بھی بہتر بنا سکتا ہے۔ مثال کے طور پر، ایک جیسٹ ٹیسٹ غلط JSON ڈیٹا کا مذاق اڑا سکتا ہے تاکہ یہ دیکھا جا سکے کہ آیا اسکرپٹ صحیح طریقے سے جواب دیتا ہے۔ 🛠️
مزید برآں، Node.js ایپلی کیشنز میں لاگنگ کو ترتیب دینے سے غلطیوں کو زیادہ مؤثر طریقے سے شناخت کرنے اور لاگ ان کرنے میں مدد ملتی ہے، جس سے ڈویلپرز کو مخصوص بصیرت فراہم کرتی ہے کہ مسئلہ کہاں سے شروع ہوا۔ یہ نقطہ نظر نہ صرف JSON کے مسائل بلکہ دیگر سرور کی خرابیوں کو بھی ڈیبگ کرنے میں مدد کرتا ہے۔ ترتیب دے کر console.error خرابی کے تفصیلی نتائج کے لیے، ڈویلپر مسائل کی قسم اور مقام کی مرئیت حاصل کر سکتے ہیں۔ ایرر ہینڈلنگ، JSON کی توثیق کے ٹولز، اور ایک منظم لاگنگ اپروچ کو یکجا کرنا موثر ڈیبگنگ کی اجازت دیتا ہے، جس سے پراجیکٹ کو تیز اور تیز تر شروع کیا جا سکتا ہے۔ یہ جامع نقطہ نظر Node.js ایپلی کیشنز کی وشوسنییتا کو بڑھا کر، غیر متوقع وقت سے بچنے میں مدد کرتا ہے۔ 😊
Node.js میں JSON پارسنگ کی خامیوں پر اکثر پوچھے گئے سوالات
- JSON میں "غیر متوقع ٹوکن" کی خرابی کی کیا وجہ ہے؟
- یہ خرابی اکثر JSON فائل میں نحوی مسئلے سے پیدا ہوتی ہے، جیسے کوما، بریکٹ، یا کوٹیشن مارک غائب۔
- میں Node.js میں JSON نحو کی غلطیوں کو کیسے ٹھیک کر سکتا ہوں؟
- JSON درست کرنے والے، فارمیٹنگ ٹولز، یا JSON نحو کو نمایاں کرنے والے ٹیکسٹ ایڈیٹرز کا استعمال ان غلطیوں کی شناخت اور درست کرنے میں مدد کر سکتا ہے۔
- کا کردار کیا ہے۔ JSON.parse اس تناظر میں؟
- دی JSON.parse کمانڈ JSON سٹرنگ کو ایک آبجیکٹ میں تبدیل کرتی ہے۔ اگر JSON فارمیٹ غلط ہے، تو یہ a پھینک دے گا۔ SyntaxError.
- کیسے کرتا ہے try/catch JSON کی غلطیوں میں مدد کریں؟
- دی try/catch بلاک کسی بھی پارسنگ کی غلطیوں کو پکڑتا ہے، جس سے آپ کی ایپلی کیشن کریش ہونے کی بجائے ان کو خوبصورتی سے ہینڈل کر سکتی ہے۔
- مجھے JSON پارسنگ کی جانچ کے لیے جیسٹ کیوں استعمال کرنا چاہیے؟
- جیسٹ آپ کو فرضی ٹیسٹ بنانے کے قابل بناتا ہے، جس سے آپ مختلف منظرناموں (درست اور غلط JSON) کی تقلید کر سکتے ہیں تاکہ اس بات کی تصدیق کی جا سکے کہ آپ کی غلطی سے نمٹنے کا طریقہ درست طریقے سے کام کر رہا ہے۔
- ہے fs.promises.readFile سے زیادہ موثر fs.readFileSync?
- ہاں، fs.promises.readFile غیر مطابقت پذیر ہے اور دوسرے عمل کو جاری رکھنے کی اجازت دیتا ہے، جس سے یہ قابل توسیع ایپلی کیشنز کے لیے بہتر ہے۔
- کیا package.json میں غلط JSON میرے Node.js سرور کو روک سکتا ہے؟
- ہاں، Node.js پیکیج.json میں ایک غلط JSON کے ساتھ آگے نہیں بڑھ سکتا کیونکہ یہ انحصار اور کنفیگریشنز کو منظم کرنے کے لیے بہت ضروری ہے۔
- کیسے کرتا ہے path.join() فائل ہینڈلنگ میں مدد؟
- دی path.join کمانڈ ایک پلیٹ فارم سے آزاد فائل پاتھ بناتا ہے، جو آپریٹنگ سسٹمز میں مطابقت کو یقینی بناتا ہے۔
- کا کیا فائدہ console.error ڈیبگنگ کے لیے؟
- استعمال کرنا console.error کنسول میں خرابی کی تفصیلات دکھاتا ہے، جس سے JSON پارسنگ اور سرور کے دیگر آپریشنز میں مسائل کو تلاش کرنا اور ان کو ٹھیک کرنا آسان ہو جاتا ہے۔
- JSON فائلوں میں کچھ عام غلطیاں کیا ہیں؟
- عام غلطیوں میں اضافی کوما، گمشدہ بریکٹ یا منحنی خطوط وحدانی، بغیر اقتباس والی چابیاں، اور مماثل اقتباس کے نشانات شامل ہیں۔
- کوڈنگ کرتے وقت میں JSON کی غلطیوں کو کیسے روک سکتا ہوں؟
- JSON کے مخصوص ایڈیٹرز اور تصدیق کنندگان کو استعمال کرنے سے غلطیوں کو جلد پکڑنے میں مدد ملتی ہے، جبکہ یونٹ ٹیسٹ لکھنا یقینی بناتا ہے کہ آپ کا JSON وقت کے ساتھ ساتھ غلطی سے پاک رہے۔
Node.js JSON کی خرابیوں کو سنبھالنے کے بارے میں حتمی خیالات
ہموار ایپلیکیشن کی فعالیت کے لیے Node.js میں JSON پارسنگ کی غلطیوں کو دور کرنا ضروری ہے۔ توثیق کر کے package.json فائلوں اور نحو کی غلطیوں کو جلد پکڑنا، ڈویلپرز رن ٹائم رکاوٹوں کو روک سکتے ہیں جو پروجیکٹ میں تاخیر کرتے ہیں۔ یہاں کی مثالیں Sync اور async دونوں حلوں کا احاطہ کرتی ہیں، جو پروجیکٹ کی ضروریات کی بنیاد پر لچک فراہم کرتی ہیں۔
ان تکنیکوں کو یونٹ ٹیسٹ اور لاگنگ کے طریقوں کے ساتھ ملا کر لچکدار ایپلی کیشنز بنانے میں مدد ملتی ہے۔ یہ فعال نقطہ نظر وقت بچاتا ہے، وشوسنییتا کو بڑھاتا ہے، اور ڈویلپرز کو مسائل کے حل کے بجائے جدت پر زیادہ توجہ دینے دیتا ہے۔ چاہے آپ اکیلے کام کر رہے ہوں یا ٹیم میں، JSON کی غلطیوں سے نمٹنے کے لیے ایک منظم طریقہ انمول ہے۔ 🛠️
کلیدی ذرائع اور حوالہ جات
- Node.js JSON پارسنگ اور ایرر ہینڈلنگ کے بارے میں تفصیلی بصیرت کے لیے، آفیشل دیکھیں Node.js دستاویزات .
- Node.js ایپلی کیشنز کی جانچ کے لیے بہترین طریقہ کار، بشمول یونٹ ٹیسٹنگ کے لیے Jest، پر دستیاب ہیں۔ مذاق دستاویزی .
- JavaScript میں JSON نحو کی غلطیوں سے نمٹنے کے بارے میں مزید معلومات کے لیے، چیک کریں۔ JSON.parse پر MDN ویب دستاویزات .
- Node.js میں غیر مطابقت پذیر فائل ہینڈلنگ کو سمجھنے کے لیے، دریافت کریں۔ Node.js فائل سسٹم گائیڈ .