API قراردادی است که میگوید یک نرمافزار چطور از نرمافزار دیگر داده بخواهد یا کاری را به آن بسپارد؛ مثل منوی رستوران.
در REST هر داده یک منبع با آدرس مشخص است و با متدهای HTTP مثل GET، POST و DELETE روی آن کار میکنید.
در GraphQL کلاینت در یک پرسوجو مشخص میکند کدام فیلدها را میخواهد و همهی درخواستها به یک نقطهی پایانی میروند.
gRPC با Protocol Buffers و HTTP/2 کار میکند، پیامهای دودویی فشرده میفرستد و از استریم دوطرفه پشتیبانی میکند.
API عمومی و ساده: REST. فرانتاند با صفحههای متنوع: GraphQL. ارتباط داخلی میکروسرویسها: gRPC.
جدول مقایسه، نمونهی curl، اسکیمای GraphQL و فایل proto را در مقالهی کامل DevNA ببینید.
API چیست و چطور دو نرمافزار با هم حرف میزنند؟ REST، GraphQL و gRPC را با مثال کد، جدول مقایسه و معیار انتخاب برای پروژهتان بشناسید.