jsonecho

JSON to Go

یک نمونه JSON را بچسبانید و تایپ‌های Go آن را بگیرید.

در حال بارگذاری ابزار...

نحوه استفاده از JSON to Go

  1. یک نمونه JSON نماینده بچسبانید، ترجیحاً با همه فیلدهای اختیاری پرشده.
  2. نام تایپ ریشه را تعیین کنید و تصمیم بگیرید کد کمکی هم می‌خواهید یا فقط تایپ‌ها.
  3. کد Go تولیدشده را در پروژه خود کپی کنید.

درباره JSON to Go

نوشتن کلاس‌های مدل با دست برای یک payload بزرگ JSON کسل‌کننده است و جایی است که غلط‌های تایپی رخنه می‌کنند. یک نمونه را اینجا بچسبانید و تولیدکننده ساختار را درمی‌آورد: کدام فیلدها وجود دارند، کدام شیء هستند، کدام آرایه و هر مقدار چه نوعی دارد. خروجی structهایی با json struct tag است، به‌علاوه توابع کمکی Unmarshal و Marshal.

نام‌ها به صورت PascalCase export می‌شوند و مخفف‌هایی مانند ID و URL با حروف بزرگ نگه داشته می‌شوند، که linterها همین را انتظار دارند. همه چیز در مرورگر شما اجرا می‌شود، بنابراین داده نمونه شما روی دستگاه شما می‌ماند.

استفاده از کد تولیدشده

UnmarshalRoot(data) را فراخوانی کنید، یا اگر فقط تایپ‌ها را کپی کرده‌اید از json.Unmarshal(data, &root) استفاده کنید.

فیلدهای اختیاری اشاره‌گر با تگ omitempty هستند، بنابراین مقدار جاافتاده و صفر قابل تشخیص از هم‌اند.

پرسش‌های متداول

کد Go تولیدشده به چه چیزی وابسته است؟

خروجی structهایی با json struct tag است، به‌علاوه توابع کمکی Unmarshal و Marshal.

چگونه با نتیجه JSON را تجزیه کنم؟

UnmarshalRoot(data) را فراخوانی کنید، یا اگر فقط تایپ‌ها را کپی کرده‌اید از json.Unmarshal(data, &root) استفاده کنید.

فیلدهای اختیاری و جاافتاده چگونه پردازش می‌شوند؟

فیلدهای اختیاری اشاره‌گر با تگ omitempty هستند، بنابراین مقدار جاافتاده و صفر قابل تشخیص از هم‌اند.

آیا تولیدکننده بیش از یک رکورد را بررسی می‌کند؟

فقط آنچه را در نمونه شماست می‌داند. اگر فیلدی در مثال شما نباشد در تایپ‌ها ظاهر نمی‌شود و اگر مقداری در مثال شما null باشد، تایپ آن نامعلوم است. مثالی بچسبانید که در آن تا حد ممکن فیلدهای بیشتری پر شده‌اند، یا آرایه‌ای با چند رکورد متفاوت بچسبانید.

آیا JSON من به سرور فرستاده می‌شود؟

خیر. تولیدکننده بار اول که استفاده می‌کنید، حدود ۱ مگابایت، در مرورگر شما دانلود می‌شود و همه چیز به‌صورت محلی اجرا می‌شود.

بیشتر در داده به کلاس

همه ابزارها →