COMPUTER ENGINEER

Örneklere git
Blog
HTTP / HTTPS / TLS6 dk çalışma
07/ 70

Methodlar ve istek semantiği

Method’lar, safe ve idempotent

Tekrar etmek ile okumak farklı özelliklerdir.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

GET ve HEAD’in tanımlı amacı bilgi okumaktır; uygulama bu çağrılarla sipariş silerse protokolün safe anlamını bozar. Log yazılması gibi tali etkiler, talep edilen iş etkisiyle aynı değildir. PUT belirlenen kaynağın temsilini oluşturur veya değiştirir; DELETE kaldırma niyetidir.

Idempotent, aynı isteğin tekrarının hedeflenen etkiyi bir kez uygulamakla aynı olmasıdır; bütün yanıtların aynı status ile gelmesi gerekmez. İlk DELETE 204, ikinci 404 dönse de hedeflenen son durum kaynak yokluğudur. POST genel olarak idempotent kabul edilmez. PATCH’in davranışı patch işleminin türüne bağlıdır.

HEAD gövde içermeyen GET benzeri metadata okumadır; gövde olsaydı uzunluğu ne olurdu bilgisi bazı başlıklarda görülebilir. OPTIONS yetenekleri bildirebilir ve CORS preflight’ında kullanılır. Method adı tek başına güvenlik kontrolü değildir.

NERESİNDE KULLANIRSIN?

Retry, crawler ve API sözleşmelerini doğru tasarlamak için.

SIK YAPILAN HATA

Idempotent ise her yanıt aynı olmalı sanmak.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

HTTP / temsili örnek
GET /products/7 HTTP/1.1
Host: example.test

Okuma niyeti.

Bu sayfa dış sunuculara istek göndermez. HTTP mesajları temsili, HTTP/1.1 biçiminde okunabilir gösterimlerdir; HTTP/2 ve HTTP/3 wire formatı değildir. example.test ayrılmış öğretim alan adıdır. Komut ve JavaScript örneklerini yalnız kendi test ortamında uygula; gerçek token veya cookie yayımlama.

02 / SIRA SENDE

Önce kendin dene.

POST ile ödeme timeout olduysa hemen tekrar göndermek güvenli midir?

Çözümü ve açıklamasını göster
Açıklamalı çözüm
Unknown outcome → reconcile / idempotency contract

Hayır; ilk işlem tamamlanmış olabilir. Tekrarlama sözleşmesi ve sorgulanabilir işlem kimliği gerekir.