اردو
JSON فارمیٹر کیسے استعمال کریں
یہ JSON فارمیٹر آپ کا JSON پیسٹ کرتے ہی چیک کرتا ہے اور اسے صاف ستھرا کر کے دکھاتا ہے، تاکہ آپ کچھ انسٹال کیے بغیر API کا جواب پڑھ سکیں، کنفیگ فائل ٹھیک کر سکیں یا ٹیسٹ ڈیٹا ترتیب دے سکیں۔
- ان پٹ خانے میں JSON پیسٹ کریں، یا آزمانے کے لیے نمونہ لوڈ کریں دبائیں۔
- انڈینٹیشن چنیں: 2 اسپیس (JavaScript پروجیکٹس میں عام)، 4 اسپیس (Python اور Java میں عام) یا ٹیب۔
- پڑھنے کے قابل آؤٹ پٹ کے لیے فارمیٹ چنیں یا سب سے چھوٹے ممکنہ متن کے لیے Minify۔
- کاپی دبائیں، یا نتیجہ فائل کے طور پر محفوظ کرنے کے لیے .json ڈاؤن لوڈ کریں۔
اگر JSON خراب ہو تو آؤٹ پٹ خانے کی جگہ ایک ایرر میسج آ جاتا ہے جس میں لائن اور کالم نمبر اور ایک چھوٹا اقتباس ہوتا ہے، جس میں عین غلطی کی جگہ کے نیچے کیریٹ (^) ہوتا ہے۔
JSON کی عام غلطیاں اور انہیں کیسے ٹھیک کریں
JSON دیکھنے میں JavaScript جیسا لگتا ہے لیکن اس کے اصول کہیں زیادہ سخت ہیں۔ زیادہ تر "غلط JSON" ایررز انہی غلطیوں سے آتے ہیں:
| غلط | درست | وجہ |
|---|---|---|
| {'name': 'Ana'} | {"name": "Ana"} | اسٹرنگز اور کیز کے لیے ڈبل کوٹس ضروری ہیں۔ |
| {name: "Ana"} | {"name": "Ana"} | کیز کوٹس میں ہونی چاہئیں۔ |
| [1, 2, 3,] | [1, 2, 3] | آخری آئٹم کے بعد کوما نہیں۔ |
| {"a": 1 "b": 2} | {"a": 1, "b": 2} | آئٹمز کوما سے الگ کیے جاتے ہیں۔ |
| {"n": 007} | {"n": 7} | اعداد کے شروع میں صفر نہیں۔ |
| {"ok": True} | {"ok": true} | true، false اور null چھوٹے حروف میں ہوتے ہیں۔ |
| // comment | (اسے ہٹا دیں) | کمنٹس JSON کا حصہ نہیں ہیں۔ |
جب ایرر کسی لائن کی طرف اشارہ کرے تو اصل غلطی اکثر اس سے ذرا پہلے ہوتی ہے۔ مثال کے طور پر، غائب کوما کا پتہ تب ہی چلتا ہے جب پارسر اگلی ویلیو تک پہنچتا ہے۔
فارمیٹر کیسے کام کرتا ہے
یہ ٹول JSON معیار (RFC 8259) کے مطابق آپ کا متن ایک ایک کیریکٹر کر کے پڑھتا ہے۔ ساتھ ساتھ یہ فارمیٹ شدہ آؤٹ پٹ بناتا جاتا ہے اور پہلا اصول ٹوٹتے ہی رک جاتا ہے۔ چونکہ یہ ویلیوز کو کبھی JavaScript نمبرز میں نہیں بدلتا، اس لیے بہت بڑے اعداد جیسے 64-bit IDs اور لمبے اعشاریے بالکل ویسے ہی رہتے ہیں جیسے آپ نے لکھے، اور \u00e9 جیسے escape sequences کو چھیڑا نہیں جاتا۔
آؤٹ پٹ کے نیچے والے اعداد نتیجے کا سائز، تمام آبجیکٹس میں کیز کی تعداد، اور نیسٹنگ کی سب سے گہری سطح دکھاتے ہیں۔ گہری نیسٹنگ مشینوں کے لیے ٹھیک ہے لیکن یہ اشارہ ہو سکتی ہے کہ ڈھانچہ ضرورت سے زیادہ پیچیدہ ہے۔
فارمیٹ کریں یا Minify؟
- فارمیٹ تب کریں جب لوگوں کو ڈیٹا پڑھنا ہو: ڈیبگنگ، کوڈ ریویو، ڈاکیومنٹیشن، ورژن کنٹرول میں رکھی کنفیگ فائلیں۔
- Minify تب کریں جب صرف مشینیں اسے پڑھیں: ریکویسٹ باڈیز، ڈیٹابیس یا انوائرنمنٹ ویری ایبل میں محفوظ ویلیوز، یا براؤزر کو بھیجی جانے والی فائلیں۔
یہ رہا ایک ہی آبجیکٹ دونوں انداز میں:
{
"id": 7,
"tags": [
"a",
"b"
]
}
ویب پر gzip یا Brotli کمپریشن پہلے ہی خالی جگہ کو اچھی طرح سکیڑ دیتا ہے، اس لیے Minify کرنا ڈاؤن لوڈ کی رفتار سے زیادہ اسٹوریج کی حدوں اور ریکویسٹ کے سائز کے لیے اہم ہے۔
پرائیویسی اور حدود
آپ کا JSON صرف آپ کے براؤزر ٹیب میں پروسیس ہوتا ہے؛ کچھ بھی اپ لوڈ یا لاگ نہیں ہوتا۔ کئی میگابائٹ کی فائلیں ٹھیک چلتی ہیں، البتہ سست فونز پر بہت بڑے ان پٹ کو فارمیٹ ہونے میں چند لمحے لگتے ہیں۔ پھر بھی، جب ضرورت نہ ہو تو اصل پاس ورڈز یا پرائیویٹ کیز کسی بھی ویب سائٹ پر، بشمول اس کے، پیسٹ کرنے سے گریز کریں۔
اکثر پوچھے جانے والے سوالات
JSON کو آن لائن کیسے فارمیٹ کریں؟
اپنا JSON ان پٹ باکس میں پیسٹ کریں۔ یہ فوراً چیک ہو کر 2 اسپیس کے ساتھ ترتیب پا جاتا ہے؛ چاہیں تو 4 اسپیس یا ٹیب پر بدلیں، پھر نتیجہ کاپی کریں یا .json فائل کے طور پر ڈاؤن لوڈ کریں۔
میرا JSON غلط (invalid) کیوں ہے؟
سب سے عام وجوہات یہ ہیں: ڈبل کی جگہ سنگل کوٹس، آخری آئٹم کے بعد اضافی کوما، آئٹمز کے درمیان کوما کا نہ ہونا، کمنٹس، اور بغیر کوٹس کی کیز۔ ایرر میسج پہلی غلطی کی لائن اور کالم دکھاتا ہے۔
JSON کو minify کرنے کا کیا مطلب ہے؟
Minify کرنے سے وہ تمام اسپیس اور لائن بریک ہٹ جاتے ہیں جو اسٹرنگز کے اندر نہیں ہیں۔ ڈیٹا بالکل وہی رہتا ہے لیکن فائل چھوٹی ہو جاتی ہے، جو APIs، کنفیگ ویلیوز اور اسٹوریج کے لیے مفید ہے۔
کیا JSON میں کمنٹس یا آخری کوما کی اجازت ہے؟
نہیں۔ معیاری JSON (RFC 8259) دونوں کی اجازت نہیں دیتا۔ کچھ ٹولز JSONC یا JSON5 قبول کرتے ہیں جن میں یہ چلتے ہیں، لیکن براؤزرز اور زیادہ تر APIs جیسا سخت پارسر انہیں رد کر دے گا۔
کیا میرا JSON سرور کو بھیجا جاتا ہے؟
نہیں۔ پارسنگ اور فارمیٹنگ مکمل طور پر آپ کے براؤزر میں JavaScript سے ہوتی ہے۔ آپ کا ڈیٹا کبھی آپ کے ڈیوائس سے باہر نہیں جاتا، اس لیے API کیز یا کسٹمر ڈیٹا کے لیے محفوظ ہے، پھر بھی خفیہ معلومات شیئر کرنے سے بچیں۔