HTTP
Hiper Metin Aktarım Protokolü
Kısaca
HTTP, tarayıcıların, uygulamaların ve sunucuların basit bir istek-yanıt döngüsüyle web sayfaları ve veri alışverişi yapmasını sağlayan protokoldür.
HTTP nedir?
HTTP, tarayıcı ya da mobil uygulama gibi bir istemcinin (client) sunucudan bir şey nasıl istediğini ve sunucunun buna nasıl yanıt verdiğini tanımlar. Her alışveriş bir istekle (request) ve ardından gelen bir yanıttan (response) oluşur; her mesaj da bir başlangıç satırından, metadata taşıyan başlıklardan (header) ve gerçek içeriği barındıran isteğe bağlı bir gövdeden (body) meydana gelir.
Bir istek, amaçlanan eylemi anlatan bir metot belirtir: veri okumak için GET, oluşturmak için POST, güncellemek için PUT veya PATCH, silmek için DELETE gibi. Yanıt ise sonucu özetleyen bir durum kodu içerir: 200 başarıyı, 404 bulunamadığını, 500 ise sunucunun bir hatayla karşılaştığını gösterir.
HTTP durumsuzdur (stateless); yani her istek tek başınadır ve sunucu önceki istekleri kendiliğinden hatırlamaz. Kullanıcıları oturum açmış tutmak için bunun üzerine cookie'ler ve token'lar eklenir. Protokol HTTP/1.1'den HTTP/2 ve HTTP/3'e evrildi; bunlar veriyi daha verimli taşır ama aynı metotları, başlıkları ve durum kodlarını korur.
HTTP çoğu zaman HTTPS ile karıştırılır. HTTPS, aynı protokolün şifreli bir TLS bağlantısı üzerinden gönderilmiş halidir; böylece üçüncü kişiler trafiği okuyamaz ya da değiştiremez. Düz HTTP ise her şeyi okunabilir metin olarak gönderir ve gerçek web siteleri için kullanılmamalıdır.
Bir bakışta
Önemli noktalar
- HTTP, bir dizi istek ve yanıt olarak çalışır.
GETvePOSTgibi metotlar istenen eylemi tanımlar.200ve404gibi durum kodları sonucu özetler.- HTTP durumsuzdur; cookie'ler ve token'lar istekler arasına hafıza ekler.
- HTTPS, şifreli bir bağlantı üzerinden çalışan HTTP'dir.
Örnek
# Request sent by the client
GET /users/42 HTTP/1.1
Host: api.example.com
Accept: application/json
# Response sent back by the server
HTTP/1.1 200 OK
Content-Type: application/json
{"id": 42, "name": "Ada"}Sık sorulan sorular
HTTP ile HTTPS arasındaki fark nedir?
HTTPS, şifreli bir TLS bağlantısı üzerinden gönderilen HTTP'dir. Verinin yolda okunmasını ya da değiştirilmesini önler ve tarayıcıya gerçek web sitesiyle konuştuğunu kanıtlar.
HTTP'nin durumsuz olması ne demektir?
Sunucunun her isteği bağımsız ele aldığı ve önceki istekleri kendiliğinden hatırlamadığı anlamına gelir. Uygulamalar, geri dönen kullanıcıları tanımak için cookie, oturum (session) ya da token kullanır.
GET ile POST arasındaki fark nedir?
GET, sunucudan veri döndürmesini ister ve hiçbir şeyi değiştirmemelidir; POST ise bir şey oluşturmak ya da bir eylemi tetiklemek için veriyi istek gövdesinde gönderir.
Sık karşılaştırılanlar
İlgili sayfalar
- HTTPSGüvenlik, s. 15HTTPS, tarayıcı ile web sitesi arasındaki trafiği TLS ile şifreleyen, verileri dinlemeye ve değiştirilmeye karşı koruyan HTTP'nin güvenli sürümüdür.
- REST APIBackend ve API'ler, s. 38REST API, verileri URL'lerle tanımlanan kaynaklar olarak sunan ve istemcilerin onları standart HTTP metotlarıyla okuyup değiştirmesini sağlayan web API'sidir.
- APIBackend ve API'ler, s. 2API, bir yazılımın başka bir yazılımdan veri ya da işlem talep etmesini sağlayan, belgelenmiş ve öngörülebilir kurallar bütünüdür.
- CookieWeb Geliştirme, s. 7Cookie, bir web sitesinin tarayıcıdan saklamasını ve sonraki isteklerle geri göndermesini istediği, çoğunlukla oturum açık tutmak için kullanılan küçük veridir.
- CORSWeb Geliştirme, s. 9CORS, bir sunucunun JavaScript'ten istek yapan hangi diğer sitelerin yanıtlarını okuyabileceğini bildirmesini sağlayan tarayıcı güvenlik mekanizmasıdır.
- EndpointBackend ve API'ler, s. 11Endpoint, bir API'nin belirli bir kaynak veya eylem için istek alıp yanıt döndürdüğü, bir HTTP metoduyla birlikte kullanılan belirli bir URL'dir.
- HTTP/2Ağlar, s. 11HTTP/2, birçok istek ve yanıtı kompakt bir ikili biçimde tek bağlantı üzerinden aynı anda gönderen ve sayfaları hızlandıran, HTTP'nin ikinci büyük sürümüdür.
- HTTP BaşlığıWeb Geliştirme, s. 21HTTP başlığı, bir HTTP isteği ya da yanıtıyla gönderilen ad-değer satırıdır; içerik türü, önbellek kuralları ya da kimlik bilgileri gibi ayrıntıları taşır.
Kaynaklar
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin