Bir API tasarlarken, bir PUT yükünün güncellenen kaynağın kimliğini içermesi gerekip gerekmediği sorusuyla karşılaştık.
Şu anda sahip olduğumuz şey:
PUT /users/123 Payload: {name: "Adrian"}
Rota kodumuz kimliği URI'den çıkarır ve güncellemeye devam eder.
API'mızın ilk kullanıcıları, neden yükte kimliğe izin vermediğimizi sorguluyor:
PUT /users/123 Payload: {id: 123, name: "Adrian"}
Buna izin vermememizin nedeni, yükün ve URI'nin kimliğinin çoğaltılmış olmasıdır.
Bunu biraz daha düşünerek, kaynağı URI ile birleştiriyoruz.
URI'nin kimliği yoksa, yükün değiştirilmesi gerekir:
PUT /no/id/here Payload: {name: "Adrian"} < What user???
Yapmamak için herhangi bir neden var mı?
/users
('yeni' eklemeye gerek yok).