HTTP 201 Created
Oluşturma için başarı yanıtı: artık yeni bir kaynak var ve Location bunun nerede olduğunu söylüyor.
HTTP 201 ne anlama gelir
HTTP 201 Created, bir istek — hemen hemen her zaman bir POST veya PUT — sunucuda yeni bir kaynağı başarıyla oluşturduğunda döndürülür. REST API'leri, "artık yeni bir şey var" durumunu genel 200 başarısından ayırmak için bunu kullanır.
Uygun bir 201 yanıtı, yeni oluşturulan kaynağın URL'sini içeren bir Location başlığı içerir ve genellikle istemcinin ek bir GET isteğine ihtiyaç duymaması için oluşturulan nesneyi gövdede tekrar eder.
201 yanıtlarının yaygın nedenleri
- Bir POST isteği bir kayıt, dosya veya hesap oluşturdu.
- Bir PUT isteği, istemcinin sağladığı tam URL'de bir kaynak oluşturdu.
- Bir toplu işlem uç noktası, bir birincil kaynağı eşzamanlı olarak oluşturmayı tamamladı.
Geliştiriciler için iyi uygulamalar
- Location başlığını yeni kaynağın kanonik URL'sine ayarlayın.
- İstemcilere bir gidiş-dönüşü kazandırmak için oluşturulan temsili (sunucu tarafından atanan kimliğiyle birlikte) gövdede döndürün.
- Oluşturma tamamlanmış değil de kuyruğa alınmışsa, bunun yerine 202 Accepted döndürün.
- Tekrarlanan, aynı POST istekleri kopyalar mı oluşturuyor? İdempotency anahtarlarını düşünün ve tekrarlar için 200/409 ile yanıt verin.
Örnek yanıt
HTTP/1.1 201 Created
Location: /api/users/1024
Content-Type: application/json
{"id":1024,"name":"New user"}SSS
200 ile 201 arasındaki fark nedir?
Her ikisi de başarı anlamına gelir, ancak 201 özellikle istemciye yeni bir kaynağın oluşturulduğunu söyler. 200 ise yalnızca isteğin işlendiği anlamına gelir.
Location başlığı 201 ile birlikte zorunlu mu?
Şiddetle tavsiye edilir: yeni oluşturulan kaynağın URL'sini gösterir, böylece istemciler onu alabilir veya bağlantı verebilir.
Bir API, 201 yerine ne zaman 202 döndürmeli?
Oluşturma işlemi eşzamansız gerçekleştiğinde — 202, isteğin kabul edildiği ama kaynağın henüz var olmadığı anlamına gelir.