[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-rest-api-v-chyom-raznitsa-mezhdu-put-i-post":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":16,"progress":17,"seo":18},1114,"v-chyom-raznitsa-mezhdu-put-i-post",34,"rest-api","REST API","🌐","В чём разница между PUT и POST?","PUT и POST — два HTTP-метода для создания и обновления ресурсов, различающиеся семантикой, идемпотентностью и тем, кто определяет URI нового ресурса.\n\n| Характеристика | POST | PUT |\n|---------------|------|-----|\n| Назначение | Создание нового ресурса | Создание или полная замена ресурса |\n| URI | Указывает на коллекцию | Указывает на конкретный ресурс |\n| Идемпотентность | Нет | Да |\n| Кто определяет URI нового ресурса | Сервер | Клиент |\n| Пример | `POST \u002Fapi\u002Fusers` | `PUT \u002Fapi\u002Fusers\u002F42` |\n\nPOST — клиент говорит серверу: «создай ресурс в коллекции, ты сам определи его идентификатор»:\n```\nPOST \u002Fapi\u002Fusers HTTP\u002F1.1\nContent-Type: application\u002Fjson\n\n{\"name\": \"Иван\"}\n\nОтвет:\nHTTP\u002F1.1 201 Created\nLocation: \u002Fapi\u002Fusers\u002F42\n```\n\nPUT — клиент говорит серверу: «помести (или замени) ресурс по данному URI»:\n```\nPUT \u002Fapi\u002Fusers\u002F42 HTTP\u002F1.1\nContent-Type: application\u002Fjson\n\n{\"name\": \"Иван\", \"email\": \"ivan@example.com\", \"age\": 30}\n\nОтвет:\nHTTP\u002F1.1 200 OK     (если ресурс обновлён)\nHTTP\u002F1.1 201 Created (если ресурс создан)\n```\n\nГлавное правило: если клиент знает URI ресурса и может его задать — используйте PUT. Если URI определяет сервер — используйте POST.\n\n> **На собеседовании:** ключевые отличия — идемпотентность и кто определяет URI. POST не идемпотентен, PUT идемпотентен. Частая ошибка — говорить, что POST только для создания, а PUT только для обновления (PUT может и создавать).","","junior",[15],"rest",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":21,"keywords":22,"schemaAnswer":20,"featuredSnippetReady":23},"В чём разница между PUT и POST? — Gymterview","PUT и POST — два HTTP-метода для создания и обновления ресурсов, различающиеся семантикой, идемпотентностью и тем, кто определяет URI нового ресурса.","PUT и POST — два HTTP-метода для создания и обновления ресурсов, различающиеся семантикой, идемпотентностью и тем, кто о",[15,13],true]