Прошу прощения, что поднимаю старый топик, но давно хотел спросить, а всё как-то было не у кого...
А для чего в практическом плане возвращать разные положительные коды? RD>200 (OK) — все OK, в теле ответа будут данные RD>201 (Created) — все ОК, новая сущность создана. Обычно в ответ на POST, в хидере Location — адрес новой сущности. В теле ответа могут быть данные. RD>202 (Accepted) — все ОК, мы твой запрос приняли, обработаем позже (e.g. положили в очередь). В теле ответа могут быть данные. RD>204 (No Content) — все ОК, мы твой запрос обработали, но контент вернуть не можем (обычно в ответе на DELETE)
Чем это удобнее, в сравнении с возвращением всегда ровно одного кода, того же 200 и всё?
Т.е. мне представлялось, что какой именно положительный результат мы получим (можем получить) — понятен уже из контекста. Если мы вызывали метод создания — то результатом и должно быть создание, а при удалении контента не будет, и т.д.
Различать может быть полезно в случаях вроде "'вернуть' или 'создать новый и вернуть'", но и то, вроде как не критично нужный случай...