وقتی نوبت به طراحی API سیستم میرسد، مهندسان نرمافزار اغلب گزینههای مختلفی را در نظر میگیرند
در این مقاله به بررسی چگونگی X (توییتر) API homeline timeline (x.com/home) طراحی شده است و از چه رویکردهایی برای حل چالشهای زیر استفاده میکند:
-
نحوه دریافت لیست توییت ها
-
نحوه انجام مرتب سازی و صفحه بندی
-
نحوه بازگرداندن نهادهای سلسله مراتبی/پیوند شده (توئیت ها، کاربران، رسانه ها)
-
نحوه دریافت جزئیات توییت
-
چگونه یک توییت را “لایک” کنیم
ما فقط این چالشها را در سطح API بررسی میکنیم و پیادهسازی باطن را بهعنوان یک جعبه سیاه در نظر میگیریم، زیرا به خود کد باطن دسترسی نداریم.
نمایش درخواستها و پاسخهای دقیق در اینجا ممکن است سخت و دشوار باشد، زیرا خواندن اشیاء عمیق تو در تو و تکراری دشوار است. برای سهولت دیدن ساختار بارگیری درخواست/پاسخ، من سعی کردم API تایم لاین اصلی را در TypeScript “تایپ” کنم. بنابراین وقتی نوبت به نمونههای درخواست/پاسخ میرسد، از درخواست و پاسخ استفاده میکنم انواع به جای اشیاء واقعی JSON. همچنین، به یاد داشته باشید که انواع ساده شده و بسیاری از خواص برای اختصار حذف شده است.
شما ممکن است همه انواع را در آن پیدا کنید