API
API Testing
DERS 3
5. HTTP nedir ? 9. Endpoints
- URI
6. HTTP durum kodlari
- URL
BOLUM 1 – Temel API 7. HTTP request ve Response
10. Swagger dokumani
8. HTTP metotlari
1. API nedir ? - Nasil kullanilir
- GET
2. API nasil calisir ? - Neler Yapilabilir
- PUT
11. API protokolleri
3. API nasil kullanilir ? - POST
- SOAP
- PATCH
4. API ve Web Service ayni midir ? - Rest
- DELETE
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
Request & Response
API
Sonuc olarak
API’da islem yapmak icin uygulamalar arasindaki iletisimi
saglayacak kurallar net olarak belirlenmis olmalidir
Request
Bir uygulamadan herhangi bir bilgi istenecekse bu bilgilere
ulasabilmek icin istek sahiplerinin gondermesi gereken
request net olarak belirlenmelidir
1- End Point
2- Parametreler
3- HTTP metodu
4- Body
5- Authorization ihtiyaci
Response
Yapilan request’e verilen cevap da net ve anlasilabilir olmalidir
1- Status Code
2- Body
Ahmet BULUTLUOZ HTTP ve HTTP METOTLARI
Request / Response Body
Response
UI
(Kullanicinin
Gordugu)
[Link]/youtube
Request Response
(Bilgisayara
Gelen)
Html
Ahmet BULUTLUOZ HTTP ve HTTP METOTLARI
Request / Response Body
Bir sunucuya request gonderildiginde istegimizi sunucuya
dogru sekilde anlatabilmemiz ve donen Response’u dogru
sekilde anlamlandirabilmemiz icin kullanilan 4 temel data
formati vardir.
1- Html
2- Text
3- XML
4- Json {
"firstname": "Eric",
"lastname": "Wilson",
"totalprice": 712,
"depositpaid": false,
}
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
JSON (Java Script Object Notation) Nedir ?
{
"firstname“ : "Eric",
"lastname“ : "Wilson",
"totalprice“ : 712,
"depositpaid“ : false,
}
Gunumuzde bir web uygulamasindan bahsediyorsak, JavaScript kullanilmamis olmasi neredeyse imkansizdir.
JSON formati JS ile olusturulan web uygulamalarinda data saklamak ve uygulamalar arasinda data alisverisi
yapmak (Request/Response) icin en cok tercih edilen formattir.
JSON formatindaki bir data icin uc temel bolum vardir.
1- Suslu parantezler : JSON formatindaki bir datanin nerede baslayip, nerede bittigini gosterir. Ihtiyac
oldugunda NESTED (ic ice) JSON datalari olusturulabilir
2- Keys : JSON datalari icinde bulunan variable isimleridir.
3- Values : JSON datalari icinde bulunan variable’lara atanan degerlerdir.
Keys ve Values arasinda : kullanilir.
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
HTTP METOTLARI
HTTP metodların REST ile kullanımı;
REST tabanlı web servislerde HTTP metodlarına özel anlamlar yüklenir.
Istemcinin Request’i gonderdigi METOT’a gore SUNUCU’nun
Response’u da farklilasacaktir.
Kisaca, API sorgularinda ne yapmak istedigimizi bilmemiz, istegimize uygun bir metot ve ihtiyaca gore body
secmemiz cok onemlidir.
GET : Adresi verilen nesneyi döndürmek için kullanılır. Bu metot kullanıldığında kayıtlarda bir değişiklik
yapılmaz. Sadece istedigimiz bilgiyi net olarak Request’e yazmamiz yeterlidir.
POST : Yeni bir nesne oluşturmak için kullanılır. Her seferinde yeni bir nesne oluşturur. Yeni bir nesne
olusturacagimiz icin nesne icin gerekli tum bilgileri Request’e yazmamiz gereklidir
PUT : Var olan bir nesneyi değiştirmek için (veya eğer yoksa yeni bir tane oluşturmak icin) kullanılır. Bu metot
kullanildiginda degistirmek istedigimiz datayi ve yapmak istedigimiz degisiklikleri request’e yazmaliyiz.
PATCH : Var olan nesnenin istedigimiz belirli bilgilerini degistirmek icin kullanilir.
DELETE : Adresi verilen nesneyi silmek için kullanılır. Silecegimiz nesneyi Request’te net olarak belirtmemiz gerekir.
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
Endpoint kaynaga nasil erisebilecegimizi gosteren URI (Uniform Resource Identifiers)’lara denir. Bir API
olusturdugunuzda kullanicilarin ulasabilmesi icin bu endpoint’i ve kullanilabilecek Http method’larini
kullanicilara bildirmemiz gerekir.
URI gunluk hayatta kullandigimiz URL (Uniform Resource Locator)’a benzer.
URL kullanicinin gorebilecegi ve etkilesimde bulunacagi bir web sayfasini ifade ederken URI o sayfanin
icerdigi bilgiyi ifade eder.
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
[Link]
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
[Link]
1 1 Yapilacak islem ve kullanilacak HTTP metot
2 2 Kullanilacak Endpoint
3 3 Gonderecegimiz datanin formati (Json)
4 4 Gonderecegimiz body’de olmasi gereken
variable’lar ve bu variable’larin degerleri
5 Gonderecegimiz request calisirsa almamiz
5
gereken HTTP status code
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI
ENDPOINTS
Ahmet BULUTLUOZ TEMEL API KAVRAMLARI