فرمتکننده JSON
JSON را فرمت، اعتبارسنجی، فشرده و بهصورت درختی مرور کنید — فوری، در مرورگر شما.
فرمت کردن JSON آنلاین — زیباسازی، اعتبارسنجی و فشردهسازی رایگان
خواندن JSON برای ماشین ساده است، اما وقتی همهچیز در یک خط طولانی فشرده شده باشد، برای آدمها آزاردهنده میشود. این ابزار رایگان فرمت JSON آنلاین، یک JSON فشرده، Escapeشده یا با تورفتگی نامرتب را با یک کلیک به متنی تمیز و خوانا با تورفتگی درست تبدیل میکند؛ بدون ثبتنام، بدون آپلود فایل و بدون محدودیت حجمی که سرور تحمیل کند.
همین ابزار در هر دو جهت کار میکند. وقتی میخواهید پاسخ یک API را بخوانید، بازبینی کنید یا مستند کنید از قالببندی استفاده کنید، و وقتی میخواهید قبل از ارسال یک فایل پیکربندی، یک Payload یا یک مقدار پایگاه داده هر فاصله و خط جدید را حذف کنید، فشردهسازی را بزنید. چون تحلیلگر داخل مرورگر شما اجرا میشود، نتیجه بلافاصله ظاهر میشود.
یک فرمتکننده JSON دقیقاً چه کار میکند
ابزار زیباسازی JSON متنی را که چسباندهاید تجزیه میکند، درخت اشیاء را در حافظه میسازد و بعد آن را با تورفتگی یکدست، ترتیب اصلی کلیدها و Escape درست دوباره مینویسد. همین رفتوبرگشت، خودش مرحله اعتبارسنجی هم هست: JSON نامعتبر اصلاً تجزیه نمیشود، پس ابزار بهجای تولید خروجی خراب، خطا را گزارش میکند. بنابراین هر بار که فرمت میکنید، در عمل یک بررسی صحت JSON هم انجام دادهاید.
روش فرمت کردن JSON بهصورت آنلاین
- JSON خود را در کادر ورودی بچسبانید یا مستقیم تایپ کنید.
- نوع تورفتگی را انتخاب کنید: ۲ فاصله، ۴ فاصله یا Tab. دو فاصله در پروژههای JavaScript و TypeScript پیشفرض است و چهار فاصله بیشتر در Python و Java دیده میشود.
- برای زیباسازی روی قالببندی و برای فشرده کردن همان داده در یک خط روی فشردهسازی بزنید.
- نتیجه را در کادر خروجی ببینید و با دکمه کپی آن را در حافظه موقت کپی کنید.
- خروجی را روی درخت بگذارید تا JSON را بهصورت درخت تاشو ببینید؛ مقدارها بر اساس نوعشان رنگ میگیرند و هر شیء یا آرایه را میتوان با باز کردن همه و بستن همه باز یا جمع کرد.
فرمت کنم یا فشرده؟
| کاری که انجام میدهید | گزینه مناسب |
|---|---|
| خواندن پاسخ یک API یا یک سطر لاگ | قالببندی |
| ثبت فایل پیکربندی در Git تا تفاوتها خوانا بماند | قالببندی |
| کاهش حجم داده پیش از ارسال روی شبکه | فشردهسازی |
| ذخیره JSON در یک متغیر محیطی یا یک ستون پایگاه داده | فشردهسازی |
خطاهایی که این اعتبارسنج پیدا میکند
- کامای اضافی بعد از آخرین عضو آرایه یا شیء — در JavaScript مجاز، در JSON غیرمجاز.
- استفاده از تککوتیشن برای کلید یا مقدار؛ JSON فقط دابلکوتیشن را میپذیرد.
- کلیدهای بدون کوتیشن که مستقیم از یک آبجکت JavaScript کپی شدهاند.
- خط جدید، Tab یا Backslash بدون Escape داخل مقدار رشتهای.
- کامنت — JSON اصلاً کامنت ندارد، بنابراین
//و/* */تجزیه را خراب میکنند. - داده ناقص که آکولاد یا براکت بسته آن جا افتاده است.
چه کسانی هر روز به نمایشگر JSON نیاز دارند
- برنامهنویسان بکاند و فرانتاند که هنگام رفع اشکال پاسخهای REST یا GraphQL را بررسی میکنند.
- کارشناسان تست که خروجی مورد انتظار را با خروجی واقعی در گزارش تست مقایسه میکنند.
- تیمهای DevOps که
package.json،tsconfig.json،composer.jsonیا فایلهای Kubernetes را ویرایش میکنند. - تحلیلگران داده که خروجی ابزارهای آنالیتیکس یا لاگ Webhook را میخوانند.
- نویسندگان مستندات فنی که نمونه پاسخ را در مستندات API قرار میدهند.
آیا چسباندن JSON در این صفحه امن است؟
بله. هیچ چیزی از این صفحه بیرون نمیرود. این ابزار فقط JavaScript سادهای است که در تب مرورگر خودتان اجرا میشود، بنابراین توکنهای دسترسی، اطلاعات مشتریان و پاسخهای داخلی API هرگز آپلود، ثبت یا روی سرور ذخیره نمیشوند. وقتی دادهای که اشکالزدایی میکنید شامل اطلاعات شخصی یا رمز عبور است این موضوع اهمیت زیادی دارد، و در ضمن یعنی حتی بعد از قطع اینترنت هم ابزار کار میکند.
نکتههایی برای فایلهای JSON بزرگ یا دردسرساز
- اگر متن از فایل لاگ آمده، ابتدا زمان و سطح لاگ را حذف کنید؛ متن باید با
{یا[شروع شود. - قالب NDJSON (هر خط یک شیء) یک سند JSON واحد نیست؛ خط به خط فرمت کنید.
- بعضی APIها پیش از آکولاد اول یک پیشوند ضدسرقت اضافه میکنند که باید قبل از تجزیه حذف شود.
- سندهای خیلی بزرگ کند رندر میشوند؛ اول فشردهسازی کنید و بعد فقط بخش مورد نظر را قالببندی کنید.
- عددهای بزرگتر از ۲ به توان ۵۳ در JavaScript دقت خود را از دست میدهند؛ اگر دقت مهم است آنها را رشته نگه دارید.
فرمت JSON در VS Code، Notepad++ یا خط فرمان
| کجا | چطور |
|---|---|
| VS Code | فایل را باز کنید و Shift+Alt+F بزنید (Format Document)؛ تورفتگی از Editor: Tab Size پیروی میکند |
| Notepad++ | افزونه JSTool را از Plugins Admin نصب کنید، سپس Plugins، JSTool، JSFormat |
| خط فرمان | python -m json.tool input.json، یا اگر jq نصب است jq . input.json |
| JavaScript | JSON.stringify(obj, null, 2) برای فرمت زیبا، JSON.stringify(obj) برای فشردهسازی |
| Python | json.dumps(obj, indent=2, ensure_ascii=False) |
| PHP | json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) |
ابزار آنلاین وقتی برنده است که JSON همین حالا در کلیپبورد شماست، پشت دستگاهی هستید که ویرایشگرتان روی آن تنظیم نشده، یا میخواهید با نمای درختی یک کلید را داخل یک پاسخ بزرگ پیدا کنید.
ابزارهای مرتبط
کار با دادههای API معمولاً فقط یک قالب نیست. توکنها را با رمزگشای JWT بخوانید، مقدارهای Escapeشده را با کدگذار و کدگشای URL تبدیل کنید، دادههای باینری جاسازیشده را با کدگذار Base64 مدیریت کنید و صحت داده را با سازنده هش بسنجید. برای ساختن تایپهای TypeScript، Go یا Python از روی یک نمونهٔ JSON، از تبدیل JSON به تایپ استفاده کنید؛ راهنمای تایپ کردن پاسخ API در TypeScript کل این روند را نشان میدهد.