Junior
REST API nədir?
sobes.tech Süni İntellekt
AI-dan cavab
REST API, paylanmış sistemlər qurmaq üçün memarlıq tərzidir. REST-in əsas prinsipləri:
- Statelessness: Müştəridən serverə hər bir sorğu, onu emal etmək üçün lazım olan bütün məlumatları içərməlidir. Server, sorğular arasında müştərinin vəziyyətini saxlamır.
- Client-Server: Müştəri və server arasında aydın vəzifə bölünməsi. Müştəri sorğular göndərir, server onları emal edir.
- Cacheable: Server, cavabların müştəri və ya vasitəçilər tərəfindən keşik edilə biləcəyini göstərməlidir.
- Layered System: Müştəri, mütləq olaraq, son serverlə birbaşa əlaqə qurmaq məcburiyyətində deyil; o, vasitəçi qatlar (proxy, yük balanslaşdırıcılar) vasitəsilə əlaqə qura bilər.
- Uniform Interface: Müştəri və server arasında tək və standartlaşdırılmış qarşılıqlı əlaqə üsulu. Bu prinsip aşağıdakıları əhatə edir:
- Resources identification: Resurslar (məlumatlar) URL vasitəsilə tanınır.
- Manipulation of resources through representations: Müştəri resurslarla qarşılıqlı əlaqə qurur, onların nümayişlərini (məsələn, JSON, XML) əldə edir və dəyişiklik üçün yeni nümayişlər göndərir.
- Self-descriptive messages: Hər bir mesaj, onun necə işlənəcəyini anlamaq üçün kifayət qədər məlumat ehtiva edir.
- HATEOAS (Hypertext As The Engine Of Application State): Resurslar, əlaqəli resurslara və mövcud əməliyyatlara keçidlər (hiperkeçidlər) içerməlidir.
REST API adətən resurslar üzərində əməliyyatlar həyata keçirmək üçün standart HTTP metodlarından istifadə edir:
- GET: Resursu və ya resurs kolleksiyasını əldə etmək.
- POST: Yeni resurs yaratmaq.
- PUT: Mövcud resursun tam yenilənməsi.
- PATCH: Mövcud resursun qismən yenilənməsi.
- DELETE: Resursu silmək.
Resursun JSON nümayiş nümunəsi:
{
"id": 1, // Tanımlayıcı
"name": "Resource Name", // Resursun adı
"description": "Detailed description of the resource." // Resursun təsviri
}
REST API testləri aşağıdakıları əhatə edir:
- Funksionallıq (sorğulara düzgün cavabların verilməsi).
- Xəta idarəetməsi.
- Performans.
- Təhlükəsizlik.
- Sənədləşmə ilə uyğunluq.