Bir RESTful hizmetine CRUD dışı işlemleri eklemenin "RESTful" yolu nedir? Aşağıdaki gibi kayıtlara CRUD erişimine izin veren bir hizmetim olduğunu varsayalım:
GET /api/car/123 <- Returns information for the Car object with ID 123
POST /api/car <- Creates a new car (with properties in the request)
PUT /api/car/123 <- Updates car 123 (with properties in the request)
DELETE /api/car/123 <- Deletes car 123
POST /api/car/123/wheel/ <- Creates a wheel and associates it to car 123
Arabanın rengini değiştirmek istersem, basitçe POST /api/car/123ve yeni renk için bir POST değişkeni eklerim.
Ancak bir araba satın almak istediğimi varsayalım ve bu işlem bir "kullanıcı" kaydının "sahip olunan araba" özelliğini güncellemekten daha karmaşıktır. POST /api/car/123/purchase"Satın alma" nın aslında bir yöntem adı olduğu gibi basitçe bir şey yapmak DİNLENMELİ midir? Veya PURCHASEyerine özel bir HTTP fiili POSTmi kullanmalıyım ?
Veya CRUD dışı operasyonlar tamamen REST kapsamı dışında mı?
PATCH /api/car/123bir renk parametresi kullanmakPUT /api/car/123ve göndermek VEYA tüm araba nesnesini kullanmak ve göndermek daha iyi olacaktır . POST, yeni bir araba yarattığınız sonucuna