رونمایی از پخته‌ترین و کاربردی‌ترین محصولات آموزشی سون‌لرن با کلی آفرهای ویژه🔥
۰ ثانیه
۰ دقیقه
۰ ساعت
۳ فاطمه نقی لو
Gson parser
جامعه کاتلین ایجاد شده در ۲۴ اردیبهشت ۱۴۰۳

سلام  خسته نباشید 

من یه سوال برام ایجاد شده که چرا برای parse کردن json مربوط به error اون رو پاس میدیم به Gson ، ولی این کار رو برای دو response مربوط به coinList و coinDetail انجام ندادیم؟

سلام،

در Gson، ما برای parse کردن یک JSON مربوط به خطا (error)، آن را به Gson پاس می‌دهیم تا یک شیء (Object) از کلاس مربوط به خطا را برگرداند. این کار به این دلیل انجام می‌شود که بتوانیم اطلاعات خطا را از JSON دریافت کنیم. اما برای coinList و coinDetail، ما مستقیماً لیست یا شیء مربوطه را از Gson دریافت می‌کنیم، زیرا آن‌ها JSON‌های اصلی هستند که می‌خواهیم parse کنیم، نه یک JSON مربوط به خطا.

 

 

 

محسن موحد ۲۴ اردیبهشت ۱۴۰۳، ۲۳:۳۹

متأسفانه من چیزی متوجه نشدم، شاید بهتر باشه سوالم رو اینطوری بپرسم، ما در این پروژه سه response از سرور دریافت کردیم:

CoinsResponse, CoinDetailResponse, ErrorResponse 

اینکه ما json مربوط به error رو باید به Gson بدیم تا برامون parse کنه ولی برای json مربوط به جزئیات ننوشتیم 

Gson().fromJson(json, CoinDetailResponse::class.java) 

و همینطور برای لیست coinها ننوشتیم

Gson().fromJson(json, CoinsResponse::class.java) 

این چیزیه که برام سوال شده

فاطمه نقی لو ۲۵ اردیبهشت ۱۴۰۳، ۱۷:۵۴

سلام

این کار به دو دلیل صورت گرفته؛ اول اینکه هر دو روش آموزش داده بشه و دوم، معمولا نیازه که خطاها به‌صورت دستی پارس بشن تا کنترل بیشتری روی جزییاتشون باشه.

یلدا محصلی ۲۷ اردیبهشت ۱۴۰۳، ۰۶:۲۲