August 2, 2019 Comments(0) Uncategorized

    restful put 예제

    예를 들어 테스트에서 PUT 요청을 한 번 하면 아바타 번호가 2로 업데이트됩니다. 우리가 다시 만들 경우, 아바타번호는 여전히 2가 될 것입니다. PUT 요청을 1회 또는 10번 만들면 서버는 항상 동일한 상태가 됩니다. POST, PUT 및 DELETE와 같은 안전하지 않은 방법으로 요청을 하면 데이터가 변경됩니다. 실제로 안전하지 않은 방법으로 요청을 하면 아무 것도 변경되지 않을 수 있습니다. 예를 들어 프로그래머의 아바타번호를 이미 가지고 있는 값으로 업데이트하려고 하면 아무 일도 일어나지 않습니다. REST PUT은 메서드 수준 어노미이며, 이 부하는 다음 메서드가 HTTP PUT 요청에만 응답한다는 것을 나타냅니다. 리소스를 만들거나 업데이트하는 데 사용됩니다. PUT 추가 메서드는 리소스를 특정 URI에 배치하고 리소스가 해당 URI에 이미 있는 경우 PUT이 해당 리소스를 대체하거나 업데이트하고 리소스가 해당 URI에 없는 경우 새 URI를 만듭니다. PUT 요청에 대한 URI는 항상 특정 리소스(//{resource-id})를 가리키며, 예를 들어 리소스가 책인 경우 URI는 /books/1이되고 이 URI에서 새 리소스(책)를 업데이트하거나 만듭니다. 위의 POST 설명에서 예제 URI를 참조하십시오. PATCH는 안전하지도 아니지도 않습니다. 그러나 패치 요청은 idempotent인 방식으로 발행될 수 있으며, 이는 유사한 시간 프레임에서 동일한 리소스에서 두 PATCH 요청 간의 충돌로 인한 나쁜 결과를 방지하는 데도 도움이 됩니다.

    일부 패치 형식은 알려진 기준점에서 작동해야 하거나 리소스가 손상되기 때문에 여러 PATCH 요청의 충돌이 PUT 충돌보다 더 위험할 수 있습니다. 이러한 종류의 패치 응용 프로그램을 사용하는 클라이언트는 클라이언트가 리소스에 마지막으로 액세스한 이후 리소스가 업데이트된 경우 요청이 실패할 수 있도록 조건부 요청을 사용해야 합니다. 예를 들어 클라이언트는 PATCH 요청에서 If-Match 헤더에 강력한 ETag를 사용할 수 있습니다. 새 리소스 위치를 알자마자 PUT을 사용하여 파란색 스테이플러 아티클을 업데이트할 수 있습니다. 그러나 전에 말했듯이 : 당신은 뿐만 아니라 PUT을 통해 새로운 자원을 추가 할 수 있습니다. 다음 예제는 API가 이 기능을 제공하는 경우 완벽하게 유효합니다: 이것이 의미하는 바는 하위 리소스를 만드는 POST의 의미체계가 여전히 따라하기에 좋은 패턴이며, 새 RFC에서도 예제 사용이지만, 우리는 이 기능을 명시하려고 해서는 안 됩니다. POST는 하나의 가능성일 뿐입니다. 아주 멋지게! PUT 예제에서 유일한 스티커 re idempotency는 많은 시스템이 리소스에 “마지막으로 편집 된 타임 스탬프”를 업데이트, 편집 작업에 IAudit의 일종을 구현한다는 것입니다 …

    이러한 경우 해당 리소스에 대한 “업데이트 타임스탬프”는 기술적으로 자동으로 업데이트되어 작업의 결과가 100% 동일하지 는 않지만(prob 99.9%). 그러나 그것은 주제의 본질을 변경하지 않습니다. 요청이 성공한 경우 응답에는 employee_id 특성이 있는 직원 개체가 포함되어야 합니다. 예: 예, 오라클-db-예제 리포지토리의 자바스크립트 샘플의 일부입니다. 안녕하세요 댄! 우선, 당신의 튜토리얼은 나에게 많은 도움이되었습니다. 예를 들어 직원의 이름을 사용하여 get 요청을 하고 싶다면 어떻게 해야 하나요? 새 경로를 만들어야 하나요? 그렇다면 컨트롤러와 db_api 및 호출에서 다른 함수를 만들어야합니까? (예제에서와 같이) 줄 바래선없이 컬 명령을 실행하는 경우 -i, -H 및 -d 인수 앞에있는 백슬래시를 제거해야합니다.