RESTful API'lerde HTTP istek ve cevap kodları ile ilgili temel bilgileri öğrenin Bu yazıda, HTTP istek kodları GET, POST, PUT, DELETE ve HTTP cevap kodları 200 OK, 404 Not Found, 500 Internal Server Error gibi önemli konuları ele alıyoruz RESTful API'lerin nasıl çalıştığını anlamak için mutlaka okuyun!

RESTful API'ler, internet uygulamalarının son yıllarda gördüğü artışla birlikte, kullanımı yaygınlaşan bir web servisleri mimarisidir. RESTful API'leri kullanarak, web uygulamaları arasında veri paylaşımı yapmak mümkündür. Bu veri paylaşımı işleminde, HTTP istek ve cevap kodları önemli bir yer tutmaktadır.
Bu makale, RESTful API'lerde kullanılan HTTP istek ve cevap kodlarını ele alarak, bu kodların anlamlarını ve kullanım alanlarını açıklamayı hedeflemektedir. HTTP istek kodları, istek göndermek istediğimiz kaynak üzerinde yapmak istediğimiz işlemi belirtirken, cevap kodları da bu isteğin işlem sonucunu bize bildirmektedir.
İyi bir RESTful API tasarlayabilmek için, HTTP istek ve cevap kodları konusunda bilgi sahibi olmak oldukça önemlidir. Bu bilgi, olası hataları en aza indirgememize ve daha iyi bir web uygulaması tasarlamamıza yardımcı olacaktır.
HTTP İstek Kodları
RESTful API'lerde kullanılan HTTP istek kodları, API ile etkileşimde bulunmak isteyen istemciler tarafından kullanılır. Bu kodlar, bir kaynakla ne yapmak istediğimizi belirler ve sunucudan talep ettiğimiz kaynak hakkında bilgi verir.
İşte bazı HTTP istek kodlarına örnekler:
İstek Kodu | Açıklaması |
---|---|
GET | Belirtilen kaynağı çağırmak için kullanılır |
POST | Sunucuya yeni bir kaynak eklemek için kullanılır |
PUT | Belirtilen kaynağın var olduğunu varsayar ve yenisiyle değiştirir |
DELETE | Belirtilen kaynağı siler |
PATCH | Belirli bir kaynağın sadece bir bölümünü güncellemek için kullanılır |
Her istek kodunun kendi amaçları ve kullanım senaryoları vardır. Örneğin GET kodu, belirtilen kaynağı istemek için kullanılır ve veri çekmek için idealdir. POST kodu, yeni bir kaynak eklemek için kullanılırken PUT kodu, belirtilen kaynak varsa tamamen yenisiyle değiştirir. DELETE kodu, belirtilen kaynağı silmek için kullanılır ve PATCH kodu, mevcut bir kaynağın yalnızca belirli bir bölümünü güncellemek için kullanılır.
HTTP Cevap Kodları
HTTP Cevap Kodları, kullanıcının yaptığı HTTP isteğine sunucunun verdiği yanıtları ifade eder. RESTful API'lerde sunucuların yanıt verdiği durum kodları, belirli bir standartta olması gerekmektedir. Bu kodların uygun kullanımı, API'lerin doğru çalıştığından emin olmak için çok önemlidir.
HTTP cevap kodları, 5 farklı kategoriye ayrılmıştır. Her kategori, farklı durumları temsil etmektedir. 1XX kodları, genellikle bilgi durumlarını belirtirken, 2XX kodları ise başarılı durumları gösterir. 3XX kodları, yönlendirmeleri temsil ederken, 4XX kodları hataları ve 5XX kodları ise sunucu tarafındaki hataları belirtir.
100-continue ve 101-switching protocols kodları, bazı durumlarda kullanılabilir. 100-continue kodu, istemcinin yüklemesiyle ilgili bir sunucu talebinin alındığı ancak henüz tamamlanmamış olduğunu belirtir. Bu kod, sunucuya, hala verilerin gönderildiğini onaylama talebi gönderir. Öte yandan, 101-switching protocols kodu, sunucudan istemciye belirli bir protokol değiştiğinde bildirir.
HTTP cevap kodları arasındaki 200-ok kodu, genellikle istemcinin isteğine bir başarı yanıtı verildiğini gösterir. 201-created kodu ise, istemcinin başarılı bir şekilde bir kaydı oluşturduğunu gösterir.
300-multiple choices kodu, istemciye birden fazla seçenek sunan bir sunucunun yanıtıdır. Bu kod, istemciye birçok seçeneği gösterir ve bir seçim yapması için izin verir. 301-moved permanently kodu ise, belirli bir URI'nin kalıcı olarak taşındığını ve artık yeni bir URI'de bulunacağını belirtir.
400-bad request kodu, bir istek sorunlu olduğunda sunucunun sistem pürüzsüzlüğünü bildirir. 401-unauthorized kodu ise, istemcinin doğru kimlik bilgileri ile kimlik doğrulaması yapmadan önce almadığı bir yanıttır.
Son olarak, 500-internal server error kodu, sunucuda bir hata olduğunu ve istemcinin isteğini işleyemediğini gösterir. Benzer şekilde, 502-bad gateway kodu ise, sunucu ve bir başka sunucu arasındaki bağlantının kesildiğini veya geçersiz olduğunu belirtir.
Yukarıdaki örnekler, RESTful API'lerde kullanılan HTTP cevap kodlarının yalnızca birkaç örneğidir. Ancak, bu kodlar, sunucu ve istemci arasındaki iletişimin doğru bir şekilde yapıldığından emin olmak için son derece önemlidir.
1XX Kodları
HTTP iletişimi sırasında RESTful API'lerde kullanılan kodlar arasında "1XX Kodları" da yer alır. Bu kodların temel amacı, istemcinin ilettiği isteğe göre sunucudan yapılan cevapların niteliğini belirlemektir. 1XX kodları, sunucunun istenen kaynakla ilgili olarak henüz bir yanıt veremediğini, ancak ileriki aşamalarda bir cevap verebileceğini belirtir. Bu kategorideki kodlar arasında en sık kullanılanlar 100-continue ve 101-switching protocols'dur.
100-continue durum kodu, istemci tarafından yapılan bir istekte, sunucunun henüz isteği tam anlamıyla anlamadığını belirtmek için kullanılır. Bu durumda, sunucu isteği aldığını ve işleme başlamak için hazır olduğunu gösterir. Ancak işlem sırasında hata oluşursa sunucu daha sonra verilecek bir cevapla isteği yanıtlayacaktır.
101-switching protocols durum kodu ise sunucunun, HTTP protokolünün farklı bir sürümüne veya farklı bir iletişim protokolüne geçiş yapacağını belirtir. Örneğin, sunucu HTTP 1.0 ile ilgili bir istekte bulunulduğunu fark ederse, 101 koduyla birlikte hızlıca HTTP 1.1'e geçer ve bunu istemciye bildirir.
1XX kodları, RESTful API'lerde sıklıkla kullanılan kodlar olmasalar da, özellikle büyük ve karmaşık uygulamalarda kullanılabilecek kodlar arasındadır. Kurulan isteklerin doğru bir şekilde işlenmesini ve verimli çalışmayı sağlarlar.
100-continue
'100-continue' durum kodu, RESTful API'lerde kullanılan bir HTTP istek kodudur. Bu durum kodu, istekte bulunan istemcinin sunucuya göndermeden önce, istek gövdesi boyutunu, güncelliğini ve uygunluğunu doğrulamak için kullanılır. Bu sayede sunucu, istek gövdesi boyutunun çok büyük olduğu durumlarda ya da istek gövdesinin sunucu tarafından kabul edilecek formatlarda olup olmadığını sınayabilir.
Bir uygulama senaryosunda, bir istemci bir dosya sunucusuna yüklemek için bir istekte bulunur. Ancak, dosya boyutu oldukça büyük olduğu için yükleme işlemi uzun sürebilir ve istemci, sunucu tarafında bir sorun olduğunu düşünebilir. Bu tür isteklerde, sunucu, istemcinin isteğini kaydetmek için '100-continue' durum kodunu kullanacak ve gönderilecek dosya boyutunu, uygunluğunu ve güncelliğini doğrulayacaktır. Doğrulama tamamlandıktan sonra, sunucu '200-ok' durum kodunu gönderecektir ve dosya yükleme işlemine devam edilecektir.
101-switching protocols
RESTful API'lerde kullanılan HTTP cevap kodlarından 101-switching protocols durum kodu, bir sunucu bir istemciden aldığı bir isteği kendi protokolünde değil de farklı bir protokole geçiş yaparak yanıtlamak istediği durumlarda kullanılmaktadır. Bu durum kodu genellikle kullanılan HTTP protokolünün değişmesi gerektiğinde kullanılır.
Örneğin, bir web sitesindeki video içeriği sadece RTMP protokolü ile yayınlansa ve bir istemci bu içeriği HTTP protokolü ile talep etse, sunucu 101-switching protocols durum kodu ile RTMP protokolüne geçiş yaparak isteği yanıtlayabilir.
101-switching protocols durum kodu ile birlikte sunucu, yanıtın devamı için geçiş yapılacak protokolün bilgisini de içeren bir Upgrade başlığı gönderir. Örneğin, sunucu RTMP protokolüne geçiş yapıyorsa, Upgrade başlığı "Upgrade: RTMP/1.0" olabilir.
2XX Kodları
RESTful API'lerde HTTP istek ve cevap kodları oldukça önemlidir. Bu makalede, RESTful API'lerde kullanılan HTTP istek ve cevap kodları ele alınacaktır. HTTP istek kodları, bir isteğin türünü belirlemek için kullanılırken, HTTP cevap kodları, sunucudan gelen yanıtın durumunu belirlemek için kullanılır.
2XX kodları, başarılı bir isteğin sonucunu belirtir. En yaygın olarak kullanılan 2XX kodlarından bazıları 200-ok ve 201-created'dir. 200-ok kodu, isteğin başarılı bir şekilde işlendiğini göstermek için kullanılır. Örneğin, belirli bir kaynakla etkileşim kurmak için bir GET isteği yapıldığında, 200-ok yanıtı, istekten beklenen verilerin var olduğunu gösterir. Ayrıca, bir kaynak oluşturulduğunda 201-created yanıtı, yeni kaynağın başarıyla oluşturulduğunu belirtir.
HTTP istek ve cevap kodları, bir RESTful API'nin etkililiğini ve güvenilirliğini sağlamak için mutlaka bilinmelidir. Bu kodları bilmek, bir geliştirici için çok önemlidir çünkü bu kodlar, doğru bir şekilde kullanılmadığında hatalar ve sorunlar yaratabilir.
200-ok
HTTP 200-ok durum kodu, bir isteğin başarılı bir şekilde işlendiğini gösterir. Bu durum kodu, RESTful API'lerde yaygın bir şekilde kullanılır. Aşağıda, HTTP 200-ok durum kodunun bazı kullanım durumları verilmiştir:
- Bir kullanıcının profil bilgisi güncellendiğinde HTTP 200-ok kodu geri döndürülebilir.
- Bir blog gönderisi oluşturulduğunda, HTTP 200-ok kodu gönderildiğinde kullanıcıya blog gönderisiyle ilgili bilgi gösterilebilir.
- Bir form tamamlandığında, HTTP 200-ok kodu kullanıcıya formun başarıyla tamamlandığını ve işlendiğini gösterir.
Bir RESTful API'de HTTP 200-ok durum kodunun kullanımı, API'nin kullanımı ve tasarımı ile doğrudan ilişkilidir. API tasarımı sırasında, HTTP 200-ok durum kodu kullanılacak durumları önceden belirlemek ve API kullanıcısına açık bir şekilde iletmek önemlidir. Bu, kullanıcının başarı durumlarını ve hataları kolayca anlamasına yardımcı olur.
201-created
201-created durum kodu, bir kaynağın başarıyla oluşturulduğunu ve sunucu tarafından kabul edildiğini ifade eder. Bu durum kodu, kullanıcılara başarılı bir şekilde bir kaynak oluşturduklarını bildirmek için kullanılır. Örneğin, bir POST isteği yapılır ve sunucu tarafından başarıyla işlenir, ardından sunucu 201-created durum koduyla birlikte yeni kaynağın URI'sini yanıt olarak gönderir.
Bu durum kodunun kullanımı özellikle Web API'lerde yaygındır. Örneğin, bir müşteri kaydı oluşturmak isteyen bir istemci, sunucuya bir POST isteği gönderir. İstek başarıyla işlenirse, sunucu müşteri kaydını başarıyla oluşturur ve 201-created durum kodunu yanıt olarak gönderir. Bu şekilde, istemci başarılı bir şekilde kayıt oluşturulduğunu bildirir.
Bu durum kodu, ayrıca bir kaynağın başka bir yerde oluşturulduğunu bildirmek için de kullanılabilir. Örneğin, bir kaynak birden çok sunucu arasında paylaşılan bir içeriği temsil ederse, sunucu yeni bir kaynak oluşturur ve 201-created durum kodunu gönderirken, kaynağın yerini gösteren bir URI sağlayabilir.
201-created durum kodu birçok Web API tarafından kullanılan işlevsel bir durum kodudur. Dolayısıyla, bu durum kodunun doğru kullanımı, Web API'nin doğru şekilde çalışmasına katkıda bulunacaktır.
3XX Kodları
RESTful API'lerde, HTTP istek ve cevap kodları oldukça önemlidir ve doğru bir şekilde kullanılması gerekmektedir. 3XX kodları, genellikle yönlendirmeleri ifade etmektedir. Bu kodlar, genellikle kullanıcılara sunulan birden fazla seçenek arasında yönlendirmeleri sağlamakta kullanılır. Bu durumda 300-multiple choices ve 301-moved permanently kodları örnek gösterilebilir.
300-multiple choices kodu, bir isteğin birden fazla yanıta sahip olduğunu göstermek için kullanılır. Bu kod, birden çok alternatif arasında kullanıcının seçim yapmasına olanak tanır. Örneğin, bir RESTful API'de bulunan bir kaynak için birden fazla gösterim yöntemi varsa, bu kodu kullanarak, kullanıcıya seçenekler sunulabilir ve kullanıcının hangi gösterim yöntemini seçeceği belirtilir.
301-moved permanently kodu, istenen kaynağın kalıcı olarak başka bir URI'ye taşındığını belirtmek için kullanılır. Bu kod, eski URI'ye yapılan isteklerin yönlendirilmesi için kullanılır ve kullanıcının yeni URI'ye yönlendirilmesini sağlar. Bu kod, özellikle kaynak URL'sinin değiştirildiği durumlarda kullanılabilir.
Özetle, 3XX kodları RESTful API'lerde sıklıkla kullanılan kodlardır ve genel olarak yönlendirme işlemlerinde kullanılırlar. Bu kodların doğru bir şekilde kullanımı, kullanıcılara daha iyi bir deneyim sunmaya ve API'nin düzgün bir şekilde çalışmasına yardımcı olacaktır.
300-multiple choices
300-multiple choices durum kodu, istemcinin birden fazla seçenekle karşı karşıya olduğunu ve bu seçeneklerin bağlantısının verildiğini belirtir. Bu durum kodu, istemcinin kendisi için en uygun seçeneği seçmesini sağlar. Örneğin, bir web sayfası birden fazla dil seçeneği sunabilir. Bu durumda, sunucu, istemcinin dil tercihine göre doğru sayfayı seçmesi için 300-multiple choices durum kodunu kullanabilir.
Aşağıdaki örnek, 300-multiple choices durum koduyla cevap veren bir sunucu yanıtını gösterir:
HTTP/1.1 300 Multiple Choices |
---|
Content-Type: text/html; charset=utf-8 |
Location: http://example.com/deneme1 |
Location: http://example.com/deneme2 |
Location: http://example.com/deneme3 |
The document has moved here. |
The document has moved here. |
The document has moved here. |
Yukarıdaki örnekte, sunucu istemciye birden fazla seçenek sunmaktadır. İstemci, sunucu tarafından sağlanan bağlantıları kullanarak kendisi için en uygun sayfayı seçebilir.
300-multiple choices durum kodu, RESTful API'lerde sıklıkla kullanılan bir durum kodudur ve doğru kullanıldığında istemcinin daha iyi kullanıcı deneyimi yaşamasını sağlar.
301-moved permanently
HTTP cevap kodlarından biri olan 301-moved permanently, bir kaynağın kalıcı olarak başka bir URI'de bulunduğunu bildirir. Bu durum kodu, 301 yönlendirmesinin tamamlanmış bir örneğidir ve tarayıcıya bir kaynağın yerini değiştirdiğini ve artık eski URI'nin artık geçerli olmadığını söyler.
Bir web sitesi örneği vermek gerekirse, bir web sitesi sahibi, bir sayfayı veya alt dizini taşıdığında eski URI artık geçerli değildir ve ziyaretçi yeni URI'yi kullanarak doğru sayfaya yönlendirilir. 301-moved permanently kodu, arama motoru botları için oldukça yararlıdır, çünkü sayfanın yeni konumunu gösterir ve botların yeni konumda eşleşen veri ve içeriği yeniden tarayıp endekslemelerine izin verir.
Bir başka örnek olarak, bir şirketin web sitesinde, bir ürünün adı değiştiğinde veya tamamen kaldırıldığında, 301-moved permanently kodu kullanılabilir. Bu kod kullanılarak, arama motoru botları yeni konumun tamamını tanıyarak, eski URI'ye gelmeye çalışan kullanıcıları hedef sayfaya yönlendirebilir.
4XX Kodları
RESTful API'lerde kullanılan 4XX kodları, genellikle istemciden kaynaklı hataları ifade eder. Bu nedenle bu kodlar, hatalı isteklerde kullanılır. 4XX kodları arasında en sık kullanılanlar, 400-bad request ve 401-unauthorized kodlarıdır.
- 400-bad request: Bu kod, istemcinin API isteğinde eksik veya geçersiz veri gönderdiği durumlarda kullanılır. Yani istek mesajı anlaşılmıyorsa veya yanlış yapılandırılmışsa bu kodu döndürür. API'ye doğru yapılandırılmamış isteklerde bu kod sıklıkla görülür.
- 401-unauthorized: Bu kod, istemcinin doğrulama yapmadan API'ye erişmeye çalıştığı durumlarda ortaya çıkar. Böyle bir durumda, API yetkilendirme mekanizması istemci tarafından sağlanmayacak veya geçersiz bir kimlik doğrulama bilgisi sağlanacak. Bu durumda, API erişimi engellenir ve istemciye bu kod döndürülür.
Bu kodlar, RESTful API'lerde oluşabilecek hataların büyük bir kısmını içerir. Bu nedenle, geliştiriciler API'leri kullanırken bu kodlar ile sık sık karşılaşabilirler. Hataların daha az olması için doğru yönlendirme ve doğru yapılandırılmış istekler göndermek önemlidir.
400-bad request
400-bad request HTTP durum kodu, sunucu tarafından alınan ancak işlenemeyen bir isteğin varlığına işaret eder. Bu durum kodu, genellikle yanlış bir istek biçiminin veya geçersiz bir istek parametresinin gönderilmesinden kaynaklanır.
Bir RESTful API'de, bir istemci yanlış bir sorgu parametresi gönderdiğinde veya gerekli verileri eksik gönderdiğinde bu durum koduna neden olabilir.
Örneğin, bir v1/products API'si varsa ve istemci, bir ürün kimliği sağlamadan ürün detaylarını almak için bir GET isteği yaptığında, sunucu bu isteği işleyemez ve 400-bad request durum kodu döndürür.
Ayrıca, bu durum kodu, bir API'in limitleri aşan çok sayıda isteğe yanıt vermesi durumunda da kullanılabilir. Örneğin, bir API, belirli bir kullanıcıya belirli bir süre içinde yapılabilecek isteklerin sayısını sınırlandırıyor olabilir. Bu sınırdan fazla istek yapıldığında, sunucu 400-bad request durum kodu döndürülebilir.
Bu durum kodu, API isteklerinin doğru formatta ve doğru parametrelerle gönderildiğinden emin olmak için önemlidir. Ayrıca, bu durum kodunun istemciler için anlamlı bir hata mesajı içermesi gerekir, böylece istemci, hangi parametrenin geçersiz olduğunu ve nasıl düzeltilebileceğini bilebilir.
Aşağıda, 400-bad request durum kodu ile ilgili örnek bir POST isteği verilmiştir:
Alan | Değer |
---|---|
HTTP yöntemi | POST |
URL | https://api.example.com/v1/products |
İstek gövdesi | {"name": "New Product", "description": "A new product"} |
Yanıt durum kodu | 400-bad request |
Yanıt gövdesi | {"error": "missing required parameter 'price'"} |
Yukarıdaki örnekte, istemci, yeni bir ürün oluşturmak için bir POST isteği gönderdi, ancak 'price' parametresini eksik olarak gönderdi. Sunucu, bu eksik parametreye işleme yapamayacağından, 400-bad request durum kodu ile yanıt verir. Yanıt gövdesi, istemcinin hangi parametrenin eksik olduğunu ve nasıl düzeltilebileceğini öğrenmesine yardımcı olacak bir hata mesajı içerir.
401-unauthorized
401-unauthorized HTTP cevap kodu, genellikle kullanıcının kimlik doğrulamasının başarısız olduğu durumlarda kullanılır. Bu durum kodu, bir API'deki korumalı bir kaynağa yetkisiz erişim girişiminde bulunulduğunda veya istenen veriler için kimlik doğrulama gerektiğinde gönderilir.
Örneğin, bir API kullanıcısının kimlik doğrulama bilgileri yanlışsa veya doğru değilse, 401-unauthorized durum kodu döndürülür. API kullanıcısının doğru kimlik doğrulama bilgileri sağlaması gerekir.
Bir diğer örnek ise bir ödeme işlemidir. Ödeme işlemi için doğru kimlik doğrulama bilgilerinin sağlanması gerektiğinden, ödeme işlemi doğru kimlik doğrulama bilgileri sağlanmadan önce durdurulabilir ve kullanıcıya 401-unauthorized durum kodu döndürülebilir.
Bu durum kodu ayrıca bir API'de, kaynak kotasından daha fazla istekte bulunulduğunda veya kaynaklara erişim sınırı aşıldığında da gönderilebilir. Kullanıcının daha fazla erişim isteği göndermek için izni yoksa, 401-unauthorized durum kodu döndürülür.
Toparlarsak, 401-unauthorized durum kodu, bir kullanıcının kimlik doğrulamasının başarısız olduğu durumlarda veya kullanıcının yetkisiz erişim girişiminde bulunduğu durumlarda gönderilir. Bu durum kodu genellikle, korumalı kaynaklara yetkisiz erişim girişimlerinde kullanılır ve kullanıcının kimlik doğrulama bilgilerini doğru bir şekilde sağlaması gerekir.
5XX Kodları
RESTful API'lerde kullanılan HTTP cevap kodları arasında yer alan 5XX serisi kodlar, sunucu hatası durumunu ifade eder. Bu durum, HTTP isteğinin sunucu tarafında işlenmesi sırasında bir hata oluşması sonucu gerçekleşir.
500-internal server error, sunucu tarafında bir hata oluştuğunu ifade eden durum kodudur. Bu hatanın nedeni genellikle sunucudaki bir yazılım hatasıdır. Bu durumda, kullanıcılara geri bildirim sağlanmalı ve sunucu tarafındaki hata giderilmelidir.
502-bad gateway, sunucu tarafından başka bir sunucuya yönlendirme yapıldığında oluşabilecek bir hata kodudur. Bu durum, ara sunucu üzerindeki bir bağlantı sorunu nedeniyle gerçekleşebilir. Bu hatanın giderilmesi için, sunucu bağlantısının kontrol edilmesi gerekmektedir.
- Bir uygulama, bir RESTful API'den veri almak için bir GET isteği gönderiyor. Ancak sunucuda bir yazılım hatası nedeniyle 500-internal server error durum kodu geri dönüyor.
- Bir uygulama, bir RESTful API'den veri almak için bir GET isteği gönderiyor. Ancak ara sunucudaki bir bağlantı sorunu nedeniyle 502-bad gateway durum kodu geri dönüyor.
Bu durum kodlarının kullanılması, kullanıcıya işlem yapma konusunda bilgi verirken, aynı zamanda bir hata olduğunu belirtir. Bu nedenle, bu durum kodlarının anlamları iyi anlaşılmalı ve kullanıcılar da uygulama sürecinde doğru bir şekilde yönlendirilmelidir.
500-internal server error
500-internal server error, sunucunun talep edilen işlemi gerçekleştirirken bir hata ile karşılaştığını belirtir. Bu kod, sunucu kaynaklı bir hatadan kaynaklanabilir. Örneğin, sunucunun yanıt vermediği ya da veritabanı hatası gibi bir hata meydana geldiği durumlarda kullanılabilir.
Bir web sitesinde bu durum kodunu ele alalım. Eğer bir kullanıcı bir web sitesine gidip bir formu doldururken, sunucu sağlam bir yanıt veremiyorsa, 500-internal server error hatası alır. Bu durumda, sunucu yöneticisi sorunu öncelemeli ve hatayı gidermek için bir plan hazırlamalıdır. Ayrıca, sitenin bakım süresinin ve kullanıcı deneyimini etkileyecek bir durumun söz konusu olduğu için, kullanıcılara en kısa sürede neler olup bittiği hakkında bir mesaj gönderilmelidir.
Bazı hizmetlerde, sunucu yöneticisinin müdahalesi gerekebilir. Örneğin, bir web sitesinde çok sayıda trafiğin meydana geldiği bir durumda, sunucunun kaynakları taleplere yetişmeyebilir ve bu durumda kullanıcılar 500-internal server error hatası alabilirler. Bu durumda, sunucu yöneticisi kapasiteyi artırmak için özel bir yapılandırma yapmalıdır. Ayrıca, bu hata, sunucu yöneticisine sunucudaki diğer potansiyel sorunları belirleme fırsatı da verir.
502-bad gateway
502-bad gateway durum kodu, hedef sunucunun erişilemez veya çalışmaması durumunda kullanılır. Bu durumda, mevcut sunucu işlemi tamamlayamaz ve isteği tamamlamak için başka bir sunucuya yönlendirme yapabilir. Bu kod, özellikle yük dengeleyicileri veya proxy sunucular gibi sunucu altyapısındaki sorunlarda yaygın olarak kullanılır.
502-bad gateway durum kodu, kullanıcılara, sitenin düzgün çalışmadığını ve yeniden denemeleri gerektiğini bildirir. Web geliştiricileri, bu durum kodunu kullanarak web sitelerinin ve web uygulamalarının erişilebilirliğini artırabilir.
Başka bir sunucuya yönlendirme yaparak, hedef sunucu için yedek yollar sağlanabilir ve böylece kullanıcılar doğru hedefe erişebilir. Sunucu altyapısı problemleri yaşayan web siteleri bu durum kodunu kullanarak kullanıcılarını bilgilendirebilir ve sorunları hızlı bir şekilde çözmek için yedek planları devreye sokabilir.
Bu durum kodu, HTTP istek ve cevaplarında kullanılan ve web geliştiricilerinin dikkat etmesi gereken önemli bir kod olarak kabul edilir. Kullanımı, web sitelerinin ve uygulamalarının stabilitesini artırır ve kullanıcılarının beklentilerini karşılamak için gerekli yedek planları sağlar.