) 의 미삭 동일팔레트에 vs.

Http/1.1 따르면 사양명세:

&gt. 'POST' 이 메서드를 사용하여 새 하위입니다 요구가 있는 것을 요청하는 수락하셔야 원래 서버에서 인클로우저된 엔티티에는 리소스의 식별됨 '' 를 열린우리당 요청 요청 줄 ''

즉, '포스트' 만들기 위해 사용된다.

&gt. '를 저장할 수 있는 방법을 요청률 인클로우저된 엔티티에는 제공된' 열린우리당 요청 에서 동일팔레트에 ''. '는' 열린우리당 요청 경우 기존 자원, 인클로우저된 엔티티에는 원래 서버에 있는 한 수정된 버전의 간주할 수 있게 한다. 이 경우, 해당 URI 가 기존 자원을 열린우리당 요청 가리키지 '수' 로 정의되는 요청 사용자 에이전트를 통해 새로운 리소스에는 원래 서버에서 해당 uri.&quot 있는 리소스에는 작성할 수 있습니다.

즉, '동일팔레트에' 작성하거나 데 사용됩니다.

따라서 어느쪽이야 /dev/raw/raw200 만드는 데 사용될 리소스에는? 또는 원-부트 요구를 모두 지원할 수 있도록?

질문에 대한 의견 (14)
해결책
  • Overall:*

모두 동일팔레트에 및 사후 생성하는 데 사용할 수 있다.

무슨 작업을 수행하는 데 &quot &quot 하나님께용서를 합니다,? 너희는너희가 구별하기 위해 사용해야 합니다. # 39 의 solaris. you& let& # 39, 재 설계하는 과정에서 API 를 묻는 질문이 쏟아졌다. 그런 질문 바뀌엇어요 게시물로의 사용하려면 그렇게 할 것이라고 말했다. 그럼 그렇게 할 것이라고 동일팔레트에 사용할 경우 특정 질문이예요

  • 멋지구리해요 모두 사용할 수 있으며, 그래서 내 RESTful design:* 사용해야 하는 어느쪽이야

동일팔레트에 및 사후 모두 지원할 필요가 없습니다.

최대 그대로 사용할 수 있습니다. 다만 어떤 개체를 참조하는 너희에게베풀어진 요청에 따라 오른쪽으로 한 사용할 수 있다.

몇 가지 사항을 고려해야 합니다.

  • Do you 이름을 uirl 만든 객체를 명시적으로 또는 서버가 결정하도록 할? 그 이름을 사용할 경우 동일팔레트에. 서버가 결정하도록 할 경우 다음 포스트.
  • 동일팔레트에 는 멱등 도왔으매 배치할 경우 두 번 객체를 적용되지 않습니다. 이는 등록 가능한 경우, 그래서 좋은 동일팔레트에 사용하게 된다.
  • URL 와 동일한 객체를 생성할 수 있는 리소스에는 동일팔레트에 업데이트 또는 함께 할 수 있습니다 - POST 들어오는 동시에건간에 URL 로 수정 요청을 하는 2 매개변수이므로 다른 부분으로 객체에는 업데이트할 수 있습니다.
  • 오버클로킹된 example:*

[I 작성했습니까 일부가 이에 대해 다음과 같은 다른 답을 합니다] [1]:

&gt. POST: &gt. &gt. 수정 및 업데이트 리소스에는 데 사용할 수 있습니다. &gt. &gt. 게시물로의 /questions/&lt existing_question>; HTTP/1.1 &gt. 호스트: www.example.com/ &gt. &gt. 단, 다음은 오류: &gt. &gt. 게시물로의 /questions/&lt new_question>; HTTP/1.1 &gt. 호스트: www.example.com/ &gt. &gt. &gt. Url 은 아직 만들어지지 않은 경우, 당신은 &gt. 게시물로의 만들 때 사용하는 안 됩니다. &gt. 이름을 지정할 때. 이렇게 하면 &gt. # 39, & # 39 리소스에는 found& 안 됩니다. 오류 &gt. ',' 때문에 &lt new_question&gt 존재하지 않습니다. &gt. 아직 밝혀지지 않았다. ',' New_question&gt &lt 넣어야 합니다. &gt. 서버의 리소스를 이번이 처음이다. &gt. &gt. &gt. 하지만 그런 식으로 뭔가를 할 수 있습니다. &gt. 이 리소스에는 게시물로의 사용하여 만들 수 있습니다. &gt. &gt. &gt. Http/1.1 게시물로의 / 질문 &gt. 호스트: www.example.com/ &gt. &gt. 단, 이 경우 리소스에는 &gt. 이름이 지정되지 않은 새로운 객체에는 &gt. Uirl 경로는 반환되었습니다 수 있습니다. &gt. &gt. PUT: &gt. &gt. 만드는 데 사용되는 리소스에만 또는 &gt. 덮어씁니다. 지정할 때 &gt. 리소스에는 새로운 url 입니다. &gt. &gt. 새 자원의: &gt. &gt. 동일팔레트에 /questions/&lt new_question>; HTTP/1.1 &gt. 호스트: www.example.com/ &gt. &gt. 기존 리소스에는 덮어쓰려면. &gt. &gt. 동일팔레트에 /questions/&lt existing_question>; HTTP/1.1 &gt. 호스트: www.example.com/ &gt.

[1]: # 256359 https://stackoverflow.com/questions/256349/what-are-the-best-common-restful-url-verbs-and-actions/256359

해설 (41)

웹에서 하는 말하도다 어설션을 찾을 수 있습니다.

매우 그러겄지 괜찼습니다

멱등법칙 중에서 가장 좋은 것은 동일팔레트에 및 사후 기준으로 작업의.

  • 동일팔레트에 * 리소스에는 완전히 알 수 있다 - 교체하십니까 있는모든 http://ipw2100.sourceforge. 지정된 url 이 서로 다른 것. 정의에 따라, a 는 멱등 동일팔레트에. Do you like it 만큼, 결과는 마찬가지다. 'x = 5' 는 멱등. 이전에 존재하는 방관하겠나 인스턴스인지 리소스에는 올릴 수 있습니다 (예, 생성, 또는 업데이트하려면)!

, 업데이트뿐 게시물로의 리소스에는 자회사 또는 자도으로 리소스에만 변했다니까 발생합니다 그 후, '아니다' 는 멱등 길에서 x++ 멱등 없습니다.

이 인수를 통해 만들 수 있는 건 알고 있을 때 동일팔레트에 캐비닛용입니다 url 을 만들 수 있습니다. 게시물로의 알 때, factory&quot &quot url 을 만드는 데 사용할 수 있습니다. 또는 manager for 범주입니다 만들려는 것.

그래서:

POST /expense-report

또는:

PUT  /expense-report/10929
해설 (16)
          • At a server 는 URL 에 게시물로의 하위여야 리소스에는 defined uirl.
          • Tcpg / 덮어씁니다 리소스에는 동일팔레트에 URL 에 그 자체로도 선수단 defined_ _client uirl.
        • 업데이트뿐 리소스의 part 패치*를 URL 에 정의된 클라이언트입니다 uirl.

관련 위한 사양명세를 [RFC 2616 & # 167, 9.5ff.] [1] 는 동일팔레트에 및 사후

  • 게시물로의 tcpg 하위여야 리소스에는 * 도왔으매 포스트에 아이템 '는' / '/ 아이템' 아래 살고 있는 자원의 자원. 예. '/items/1'. 패킷을 보내는 두 번 같은 게시물로의 두 자원을 만듭니다.

      • URL 생성 당시 동일팔레트에 캐비닛용입니다 또는대체 리소스에는 클라이언트뿐 * 로 알려져 있다.

따라서: 동일팔레트에 만들기 전에 이미 알고 있는 유일한 후보로 클라이언트입니다 uirl 리소스에는 생성됩니다. 예. '키' 제목으로 리소스에는 /blogs/nigel/entry/when_to_use_post_vs_put 사용됩니다

  • 동일팔레트에 덮어씁니다 리소스에는 uirl 이미 존재하는 경우, 그래서 동일한 요청을 보내는 http://support. 알려진 두 번 효과가 없습니다. 즉, 멱등 * 페이징됩니다 넣을 수 있다.

이 RFC 판독합니다 다음과 같습니다.

&gt. 근본적인 차이점은 다른 의미를 열린우리당 요청 로그하고 동일팔레트에 요청률 반영됩니다. Uri 에서 POST 요청을 처리할 수 있는 식별됩니다 리소스에는 인클로우저된 엔티티입니다. 될 수 있는 리소스에는 데이터 받아들이는 프로세스 게이트웨이형 일부 다른 프로토콜 또는 별도 법인으로 받아들이는 주석입니다. 반면 열린우리당 인할지 - 사용자 에이전트 나님께서 알고 URI 를 요청과 함께 동일팔레트에 reques 식별됩니다 인클로우저된 엔티티에는 서버와 고안되었습니다 적용하십시오 일부 다른 리소스에는 요청을 하면 안 됩니다. Uri 를 적용할 수 있는 서버의 경우 다른 욕망을 요청

  • Note:* 동일팔레트에 업데이트하려면 리소스에는 주로 사용되고 있다 (그 전체가 그들을 대체하여) 는 기존 자원을 사용하여 향해 이동, 최근에는 정보기술 (it) 로 업데이트 패치합니다 동일팔레트에 덮어씁니다 전체 리소스에는 지정합니다. [2] [RFC 5789.]

  • 업데이트 2018년 *: 만들 수 있을 경우 이를 피하기 위해 동일팔레트에. 지켜보리니 [3] [&quot 미삭 PUT&quot 않고;;]

&gt. "미삭 될필요는 동일팔레트에" 기법을 통해, 이 가설로는 소비자들은 &gt. # 39, & # 39 nounified& 새 했다. 요청 '이다. 설명한 바와 같이 &gt. 이에 앞서 변화하는 고객의 메일 주소는 게시물로의 새 &gt. "장조파데레스" 의 "고객" 는 있는 리소스에는 리소스에만 동일팔레트에 아닙니다. &gt. 다른 메일 주소 필드 값을.

[미삭 API 의 의해 설계 - 자원 모델링 프라카시 서브라만리엄 투트워크스] 에서 발췌 4

이 문제를 피하기 위해 여러 클라이언트 API 를 docname 스테이드 이전됩니다 업데이트하더라도 단일 자원 및 이벤트 자재수급 (소싱) 과 함께 아주 잘 더 일치시킵니다 크리스. 올리는 작업을 비동기적으로 완료되어도 때 적절한 변환 및 기다리면 적용될 것으로 보인다.

[1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html # sec9.5

해설 (12)

요약:

만들기:

동일팔레트에 또는 사후 다음과 같은 방법으로 모두 수행할 수 있습니다.

&gt. # # 동일팔레트에 &gt. &gt. 을 만들 수 있는 새로운 URI 를 아래에 있는 리소스에는 뉴어수르세이드 식별자에서 / 자료 수집 또는 . &gt. &gt. 동일팔레트에 /resources/&lt newResourceId>; HTTP/1.1 &gt. &gt. &gt. # # 게시물로의 &gt. &gt. A / 자료 수집, 또는 새로운 URI 에서 리소스에는 만듭니다. 일반적으로 식별자입니다 반환됨 서버를 통해. &gt. &gt. Http/1.1 게시물로의 / 자료

업데이트:

    • 만 다음과 같은 방법으로 동일팔레트에 함께 수행될 수 있다.

&gt. # # 동일팔레트에 &gt. &gt. 렉시스팅레수르세이드 아래에 있는 리소스에는 업데이트 및 자료 수집, 또는 많은 식별자에서 열린우리당. &gt. &gt. 동일팔레트에 /resources/&lt existingResourceId>; HTTP/1.1

설명:

일반 미삭 및 URI 로 다룰 때 일반 있습니다 에 대한 구체적인 leftright. 및 일반 보통 이 불렀으매 컬렉션 리소스에는 특정 항목을 더 많은 부를 수 있다. 단, a 리소스에는 취합은 포함할 수 있습니다.

&gt. # 사례: # &gt. &gt. . - 일반 - &lt 특정 &gt, &gt. &gt. URI: website.com/users/john &gt. 전체 사이트 (website.com) &gt. 사용자 취합은 사용자 - &gt. 존 - 항목설명프로세서 컬렉션, 또는 리소스에는 &gt. &gt. Uri website.com/users/john/posts/23 &gt. 전체 사이트 (website.com) &gt. 사용자 취합은 사용자 - &gt. 존 - 항목설명프로세서 컬렉션, 또는 리소스에는 &gt. 포스트 - 게시물 취합은 에서 존 &gt. 23 - post) 에서 23) 도 함께 식별자입니다 리소스에는 존

        • 를 항상 사용할 때 게시물로의 틀렸다니까 다스려 취합은 도왔으매 기도하라주여 때마다
POST /users HTTP/1.1
    • 취합은 users 새로운 사용자 틀렸다니까 인터넷에 올렸다.

그럽세 변경하고 etta. 경우 이 같은 일이.

POST /users/john HTTP/1.1

의미 있는 일을 할 것으로 보인다 "고 틀렸다니까 추가할 수 있는 users 취합은 리소스에는 john 취합은.

한 번 사용하고 동일팔레트에 틀렸다니까 다스려 맞추기바인딩 또는 단일 품목, 아마도 리소스에는 안에 취합은. 따라서 when you say:

PUT /users/john HTTP/1.1

당신은 말할 수 있을 때, 이 경우 서버 업데이트, 또는 작성, t 리소스에는 john doesn& # 39 에서 users 컬렉션 .

사양명세:

Let me 강조표시할 몇 가지 중요한 부분을 사양명세:

# 게시물로의

&gt. 받아들일 수 있는 방법을 사용하는 것을 요청하는 게시물로의 원래 서버에서 인클로우저된 요청에 따라 그 엔티티와 new 리소스의 열린우리당 요청 요청 줄 에 식별됩니다 종속물

        • 리소스에는 취합은 대한 새로운 업그레이드됨 만듭니다.

# 동일팔레트에

&gt. 저장할 수 있는 방법을 아래에 있는 동일팔레트에 요청률 인클로우저된 엔티티에는 제공된 열린우리당 요청. 이 경우 이미 () 은 열린우리당 요청 충족되었으며 리소스에만 인클로우저된 엔티티에는 간주할 수 있게 하는 수정된 버전을 원래 서버에 있는 한. 열린우리당 요청 가 아닌 경우, 해당 uri 가 리소스에만 기존 가리키십시오 수 있다 "고 요청한 의해 정의된 new 리소스에는 만들 수 있는 사용자 에이전트, 서버 리소스 uri.&quot.

이에 따라 만드시겠습니까 또는 업데이트하려면 존재를 리소스에는 .

참조:

해설 (16)

39; d like to my &quot i& 추가 pragmatic"; 조언을 아끼지 않았다. 동일팔레트에 사용할 때, id&quot &quot 알아야 합니다. 이러한 개체를 통해 살릴거라고 검색할 수 있습니다. # 39 라고 하는 경우, t, 너무 잘 작동합니까 won& 동일팔레트에 사용하여 데이터베이스 생성할지 귀의하지않는다고 id 를 위한 향후 조회 또는 업데이트뿐 할 수 있습니다.

그래서: 기존 사용자 id 및 저장할 수 있는, 또는 원-부트 생성하는지 클라이언트입니다 it& # 39 의 검증된 고유하므로 해당 id:


PUT /user/12345 HTTP/1.1  
해설 (2)

포스트 작성 new&quot 고말은 "; 다음은 사용자 만들기 위해 이 같이 입력입니다 만드시겠습니까 me&quot ";).

즉, 만약 이미 exists&quot 삽입하십시오 &quot 동일팔레트에, 교체. 같이 사용자의 데이터를 5&quot 슬라이드에서는 ";).

이후 게시할 수 있습니다 example.com/users # 39, 사용자가 모르는 don& 운영까지도 서버만을 아직말이에요, url 을 만들 수 있습니다.

이후 a (example.com/users/id) / 만들기 위해 넣을 바꾸려는 특정 사용자.

두 개의 동일한 사용자 id 와 동일한 데이터를 서로 다른 두 번 글을 작성할 것을 의미합니다. 첫 번째 엔티티와 업데이트뿐 그에게 두 번 팅 동일한 데이터로 tcpg 두 번째로 사용자가 동일한 상태 (변경 없음). 이후 종료할 수 있는 보다 동일팔레트에 횟수에 관계없이 동일한 상태 후에 그것을 &quot potent&quot, 똑같이 수행할 수 있다고 한다. 멱등 때마다. 이 자동으로 재시도하기 요청률 유용하게 사용할 수 있다. # 39, & # 39 더 이상 설정하시겠습니까 resend&. 뒤로 버튼을 누르면 브라우저.

일반 조언을 할 때 사용할 수 있는 것이 집중식으로 uirl 세대 게시물로의 서버 자원 활용. 그렇지 않으면 동일팔레트에 사용합니다. 동일팔레트에 포지셔닝하십시오 통해 포스트.

해설 (15)

Post 를 사용하여 만들고 업데이트하려면 PUT. 루비 온 레일즈 that& # 39, s 는 어떻게 그렇게 어쨌든.

PUT    /items/1      #=> update
POST   /items        #=> create
해설 (8)

두 제품 모두 간의 데이터 전송에 사용되는 클라이언트와 서버 간 미묘한 차이가 있는데, 그 사이에 수축됐는데.

! [입력하십시오. 이미지 여기에 설명을] [1]

비유:

      • 동일팔레트에 동일팔레트에 즉 시행하십시오 및 위치에 있었다.
  • POST 로 메일 보내기 게시물로의 in 사무실.

! [입력하십시오. 이미지 여기에 설명을] [2]

소셜 미디어 / 네트워크 비유:

      • 게시물로의 sns 에: 하나님이 게시물로의 메시지를 만든 새 포스트.
      • 동일팔레트에 (예: 우리는 이미 메시지 편집) 에 올랐다.
해설 (4)
    • 미삭 는 매우 높은 수준의 개념이다. # 39, HTTP, 실제로 doesn& 전혀 언급조차 없다!

Http 의 구현 방법에 대해 의심하고 있는 경우, 넌 언제나 시행하십시오 미삭 atomtm 발행물에 프로토콜 (애텀푸브) 에 대해 사양명세. Restful 웹 서비스 의해 개발된 애텀푸브 는 표준 HTTP 와 함께 쓰기 위해 많은 의견을 로이 필딩, HTTP 와 미삭 소설가, 일부는 다른 미삭 그 발명가 및 ((주)) http 자살했죠 통설이다.

실제로 애텀푸브 직접 사용할 수 있게 할 수 있습니다. 반면 it came out of the 블로그 커뮤니티, 블로그 것은 무리라구 제한된다. 임의의 (네스트된) 컬렉션을 위해 상호 작용하는 것이 아니라 일반 포로토콜 평안하게 HTTP 를 통해 임의의 리소스에는. 로 나타낼 수 있는 경우 응용 프로그램을 사용할 수 있는 그런 걱정은 하지 않고 그냥 리소스에는 네스트된 취합은 애텀푸브 동일팔레트에 또는 사후, 어떻게 사용할지 HTTP 상태 코드 반환되기를 및 그 모든 정보.

이게 애텀푸브 자원 만들기 (섹션 9.2cm) 말할 수 있다.

&gt. Uri 에 요청을 게시물로의 전송하십시오 취합은 구성원을 추가하려면, 클라이언트뿐 컬렉션.

해설 (9)
  • 여부 결정은 동일팔레트에 만드는 데 사용할 수 있는 API 는 http 서버에 리소스에는 (post) + 미삭 갖고 있는 사람을 기준으로 소유하는지 uirl structure. 클라이언트별로 알 수 있을 정도로 구조체입니다 커플링 (coupling) 또는 참여하십시오 정의중 URL 은 SOA 의 커플링 의견이 있는 불필요한 것은 바람직하지 않다고 말했습니다. 그 원인은 탈출이라니요 가지유형의 커플링 미삭 너무 인기가 높다. 따라서 이러한 규칙에는 예외가 있습니다 적절한 방법을 사용할 때 발생하는 클라이언트입니다 POST. 그들이 바라는 대로 자원을 보유할 수 있도록 구조를 위치를 제어할 수 있습니다. 다른 게 잘못되었군 고말은 가능성이 높고 드물다 이 시점에서, s # 39 를 사용할 경우 일부 국민들이 주장한다 RESTful-URL& 클라이언트뿐 높여줍니까 계시나니 자원 및 url 을 따라서 동일팔레트에 사용할 수 있습니다. 결국, 이 때문에 url 은 정식, 표준화된, 루비 온 레일즈), 장고, 트위터 api 에 대해 중요한 블라 블라 블라 신경 안 써. 그 사람을 이해하는 데 필요한 로이 필딩 자신도 그 같은 것은 없습니다 restful uirl 명시하고 : &gt. 안 (an 미삭 apiu 정의하십시오 고정식입니다 리소스에는 이름이나 계층 &gt. 명백하네 커플링을 클라이언트 및 서버). 서버 자유를 가져야 합니다. &gt. 자신의 이름공간이 제어할 수 있습니다. 대신 서버에서부터 지시할 수 &gt. 클라이언트, HTML 의 완료되어도 chunghwa 방법에 대한 적절한 uri 가 같은 &gt. 열린우리당 내에서 해당 명령을 정의함으로써, 템플릿일 양식 및 미디어 &gt. 유형 및 링크 것이다. [고장으로부터 있음을 클라이언트뿐 여기 있다. &gt. 가정 구조 때문에 리소스에는 밖으로의 밴드에서만 정보 (예: &gt. 이는 같은 표준 데이터 중심의 한 특정 분야 &gt. # 39 의 rpc& 기능 결합]. &gt. &gt. http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven 결국 a * 실제로 restful uirl 위반) 로 url 의 구조를 담당하는 미삭 서버만을 한다고 결정을 피하기 위해 무료 커플링 (coupling) how to use it. 이 경우 인간으로 너회가 검토완료 중요성에 대해 자체 검색 API 의 디자인.
  • 와 함께 디자인 등을 사용하여 만들 수 있지 않기 때문에 게시물로의 리소스에는 게시물로의 idempotent. 리피팅 사후 여러 차례 때마다 같은 비헤이비어를 보장하지 않는다는 뜻이다. 이 빈곤으로써 사람들이 사용하는 것을 알았을 때 not.* it& # 39 에 동일팔레트에 만드시겠습니까 리소스에는 한다는 잘못된 (POST 는 생성), s # 39, t know how to do it 있지만 어쨌든 don& 있기 때문에 이 문제를 해결했다. 이 염려사항 다음과 같은 상황을 확인할 수 있다.
  1. 새로운 자원 게시물로의 클라이언트 서버.
  2. 서버 프로세스를 sends 요청 및 응답.
  3. 클라이언트뿐 응답 받은 적이 없다.
  4. 클라이언트 서버 응답을 받지 못하고 있다.
  5. 클라이언트뿐 대한 url 이 없는 자원 (그리하매 동일팔레트에 옵션이 없는) 와 게시물로의 반복합니다.
  6. 서버와 게시물로의 멱등 않습니다. 사람들을 혼란스럽게 할 수 있지만, 일반적으로 6 단계 대화상자에서는 의심하였더라 클라우지 만들기 위해 이 문제를 해결하기 위해 이유가 없다. 대신 사용할 수 있는 [RFC 2616] [1] 과 명시된 HTTP 서버 응답을: &gt. 10.4.10 409 Conflict &gt. &gt. 현재 인해 충돌이 요청을 완료할 수 없습니다. &gt. state of the 리소스에는. 이 코드는 국한됨 허용된 상황에서 &gt. 사용자 및 충돌을 해결할 수 있을 것으로 보인다 &gt. 다시 요청. 바디입니다 충분한 답변을 합니다. &gt. &gt. 사용자 정보 출처를 파악하기 위한 것이다. &gt. 이론적으로는 응답 엔티티입니다 등이 포함될 것인지에 대한 충분한 정보를 &gt. 사용자 또는 사용자 에이전트 문제를 해결하기 위해. 그러나 못할 수 있는 &gt. 가능한 필요하지 않습니다. &gt. &gt. 충돌이 발생할 가능성이 가장 높은 대응하여 동일팔레트에 요청. 대한 &gt. 버전 관리 및 엔티티에는 동일팔레트에 사용하던 들어 있다. &gt. 포함) 에 의해 수행됨 변경되는지 리소스에는 갈등을 빚고 있는 &gt. 이에 앞서 요청 응답 (서드파티), 409 서버에서 사용할 수 있습니다 &gt. 데이텀이 나타내십시오 요청을 완료할 수 없습니다. 이 경우 &gt. 응답 엔티티에는 차이점을 바뀌엇어요 아니하였으매 포함될 것으로 보인다. &gt. 이 두 가지 버전으로 응답 형식으로 컨텐츠 유형에 의해 정의된다.
  • 답변 수신기마다 상태 코드 409 충돌이 있기 때문에 정확한 있지만 *:
  • 데이터 게시물로의 수행할 수 있는 시스템이 리소스에는 일치시킵니다 디스크입니다. diskid id 가 이미 "충돌할 현주소를 리소스에는."
  • 클라이언트 서버 자원 및 캐비닛용입니다 이해하기 위한 중요한 부분인 만큼 적절한 조치를 취할 수 있다. 이는 "상황 (s) 의 위치를 수 있을 것으로 기대된다 사용자 요청을 다시 갈등을 해소할 수 있을 수 있습니다."
  • 이에 대해 해당 url 을 포함하는 충돌하는 ID 와 있는 리소스에는 사전조건에 자원에 대한 답변을 "충분한 사용자 정보 또는 사용자 에이전트 문제를 해결하기 위해" 는 RFC 2616 호스트당 이상적인 사례.
  • 업데이트 버전의 RFC 를 기반으로 복귀시킴 2616* 7231 RFC 7231 및 [섹선에서 4.3.3] [3] 교체할 수 있는 고안되었습니다 2616 가능한 준수하십시오 POST 에 대해 설명합니다. &gt. 사후 처리 결과가 약간만이라도 avamer 패치합니다. &gt. 기존 리소스에만 원래 서버에서 리디렉션할 수 있는 표현 &gt. 사용자 에이전트) 에 의해 해당 자원에 대한 응답을 보내기 303 (다른 참조) &gt. # 39 의 위치에 있는 기존 resource& 식별자입니다 현장. 이 &gt. 사용자 에이전트 리소스에는 식별자입니다 혜택을 제공하고 있다. &gt. 를 더 받을 수 있는 방법을 통해 표현 및 전송 &gt. 공유됨 표시되어도 캐싱과는 의 비용을 들여 사용자가 추가 요청 &gt. 아직 없는 에이전트에는 표현 캐시됩니다. 지금은 그냥 구미만 당긴다고 반납할 수 있는 경우에도 단순히 303 POST 가 있다. 그러나 반대 그렇다. 303 만 만들 경우 반환 요청 (서로 다른 리소스를 생성) 같은 여러 의미가 반품하십시오 컨텐트입니다. 예를 들면, 박스트롤의 &quot message&quot 요청을 보내주셔서 감사합니다. 클라이언트 때마다 다시 다운로드하려면 필요가 없습니다. RFC 7231 여전히 유지하고 있는 것이 아니라, 지속적으로 할 수 있는 부분의 유지보수합니다 4.2.2 게시물로의 멱등 게시물로의 만들기 위해 사용해야 합니다. 이에 대한 자세한 내용은 [기사] [4] 읽습니다. [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html # sec10.4.10 RFC 2616 409 Conflict&quot "; [3]: http://tools.ietf.org/html/rfc7231 # section-4.3.3 &quot 4.3.3&quot 섹선에서 RFC 7231 -;; [4]: http://articles.joshcodes.com/? p = 5 &quot 만들 수 있는 방법, 게시물로의 동일팔레트에 미삭 제대로 리소스에는 server&quot.
해설 (11)

맘에 드는 조언, from [RFC 2616& # 39 의 정의는 동일팔레트에] (http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html):

&gt. 근본적인 차이점은 다른 의미를 열린우리당 요청 로그하고 동일팔레트에 요청률 반영됩니다. Uri 에서 POST 요청을 처리할 수 있는 식별됩니다 리소스에는 인클로우저된 엔티티입니다. 될 수 있는 리소스에는 데이터 받아들이는 프로세스 게이트웨이형 일부 다른 프로토콜 또는 별도 법인으로 받아들이는 주석입니다. 반면 열린우리당 인할지 - 사용자 에이전트 나님께서 알고 URI 를 요청과 함께 동일팔레트에 reques 식별됩니다 인클로우저된 엔티티에는 서버와 고안되었습니다 적용하십시오 일부 다른 리소스에는 요청을 하면 안 됩니다.

여기 있는 이 대목, 다른 이름을 가지고 있는 가장 좋은 조언 및 자원에 대한 발려짐 동일팔레트에 이미 새 객체를 생성하기 위한 좋은 게시물로의 asm0001.asm 기존 자원 (및 서버 이름 할 것임).

나는 이에 대한 해석 및 이뎀포텐시 동일팔레트에 한다는 것을 의미하는 것으로, 요구 사항:

  • POST 는 새 객체를 생성할 수 있는 좋은 컬렉션 (멱등 만들 필요는 없습니다.)
  • 동일팔레트에 좋다 업데이팅이 기존 객체에는 (및 업데이트하려면 멱등 합니다)
  • POST 업데이트뿐 기존 객체에는 비사양 멱등 사용할 수 있습니다 (특히 변경되는 오브젝트의 일부를 지정하지 않고 전부 - 한국이기 때문이다, 새 멤버 모음을 실제로 특수한 경우로, 이런 유형의 업데이트하십시오 &solarisdvd collection& # 39 의 perspective)
  • 동일팔레트에 사용할 수도 있습니다 클라이언트뿐 이름을 리소스에는 경우에만 생성할 수 있습니다. 그러나 미삭 클라이언트뿐 aren& # 39, t 에 대한 전제 조건 uirl 구조, 이는 정신 덜 수 있도록 돼 고안되었습니다 전지전능하심이라
해설 (1)

한 마디로.

, 는 멱등 동일팔레트에 있는 리소스에는 만약 같은 작업은 여러 번 1 시간 또는 csetup 스테이드 같습니다.

, 는 리소스에는 스테이드 될 수도 있는 이 작전이 시작될 경우 게시물로의 비사양 멱등 다른 여러 번 실행됨을 비해 단일 실행 시간.

볼 수 있는 데이터베이스 쿼리

, 동일팔레트에 &quot 수강생용 설정되었습니다 주소 = &quot, abc&quot 업데이트하십시오 비슷한 생각할 수 있습니다. 여기서 id = &quot 123";;

, 뭔가 생각할 수 있는 등 게시물로의 &quot 삽입하십시오 수강생용 (이름, 주소) 값 (,, &quot abc&quot xyzzz&quot ";).

Student Id 가 자동으로 생성됩니다.

다시 말해, 만약 같은 여러 번 함께 한 번, 또는 실행됨을 질의입니다 STUDENT 테이블의 상태 그대로 남아 있습니다.

만약 같은 경우, 그 후 여러 번 실행됨을 질의입니다 수강생용 레코드는유지합니다 프레젠테이션이든 만들어지는 여러 데이터베이스와 데이터베이스 상태 변경 수행 각 호스트마다 &quot INSERT"; 질의입니다.

  • NOTE:* 동일팔레트에 요구사항뿐 발생할 수 있는 반면, 게시물로의 doesn& 요구사항뿐 업데이트하십시오 리소스에는 위치 (이미 리소스에는), t # 39 합니다. 따라서 직관적으로 만들기 위해 새 리소스에만 동일팔레트에 게시물로의 인정해온 데 반해 기존 리소스에는 업데이트하던 필요합니다.

  • 일부 나올 수 있는 게시물로의 업데이트를 수행할 수 있습니다. 하드 사용할 수 없는 규칙을 어느쪽이야 업데이트 또는 어느쪽이야 사용할 작성. 위상수학에서, m 기울어져 있으며, 다시 그것은꿈의 댁꽕 I& # 39 위에 언급된 추론을 통해 it.* 따르라

해설 (3)

POST 는 등의 글을 올려 사서함이나 서한을 e-메일입니다 이메일을 보내 주십시오. 동일팔레트에 마치 한 방에 구멍 또는 배치할 때 객체를 동일팔레트에 셸프에 (또한 알려진 주소).

39, re 게시하기 you& 함께 포스트 주소 대기열이나 뜻한다. # 39, 관련 항목의 지정된 주소로 you& 동일팔레트에, 함께 있다.

동일팔레트에 는 멱등. 100 회, 문제가 없을 것이라고 reques 보낼 수 있습니다. POST 는 멱등 없습니다. # 39, ll get 요청을 보내면 you& 100 배, 100 이메일 문자로 우편 또는 100mb/s 기입란.

일반 규칙: 알고 있는 경우 id 또는 항목의 이름이 동일팔레트에 사용합니다. 스케쳐내 id 또는 이름을 사용할 수 있는 항목의 의해 지정된 수령, 당 게시물로의.

! 게시물로의 대對 동일팔레트에

해설 (10)
  • 새 대답 (이제 이해가 미삭 우수) *

동일팔레트에 기술서임을 뭐한테 컨텐츠 서비스 할 뿐입니다, 이제부터는 렌더링하려는 표현을 사용하여 리소스 식별됨 이름이다. POST 는 기술서임을 뭐한테 콘텐츠 서비스, 이제부터는 컨테인먼트하는 한다 (또는 복제됨) 하지만 it& # 39 의 최대 서버만을 얼마나 쉽게 확인할 수 있도록 컨텐트입니다.

'동일팔레트에 x' ('x' 는 경우 식별됩니다 [리소스에는] [1]). 'x' 의 내용을 리소스에는 &quot 재장착합니다 식별됩니다 내 손으로 content.";

'동일팔레트에 x' ('x' 언약보다는 경우 식별했습니까 리소스에는): 새로운 것을 만들 수 있는 'x' 내 콘텐츠 및 사용, 리소스에는 &quot 식별됩니다 it.&quot.

'포스트 "x": 내 콘텐츠 및 제게 식별자입니다 &quot 저장하고 있는 식별하는 데 사용할 수 있어 리소스에는 (이전 또는 새로운) (또는 함께 다른 내용) 내용을 포함하는 것 "이라고 말했다. 이는 'x', 또는 하위입니다 identifies.&quot 기도하였나니 리소스에는 동일해야 합니다. # 39, s, s # 39 는 &quot, y& 리소스에는 하위입니다 x& resource&quot. 일반적으로 한 것이 아니라 구현됩니까 y 만들어 서브패스 x 있다 (예를 들면 x = '/' 와 '=' / foo / 표시줄에는 y foo) 및 수정 x& # 39 의 표현 (s) 의 존재를 반영하도록 할 수 있는 새로운 자원 리소스에는 하이퍼링크입니다 y& # 39 의 자원 및 일부 메타데이터입니다. (예: 정말 굿 디자인, 후자는 꾸릴 수 있는 url 로 디렉토리에만 미삭 - # 39 는 불투명도로 you&, re 하는 use 하이퍼미디어 서비스 클라이언트 측 uirl 건설 대신 트래버스합니다 애니웨이.

39 의 s no such thing as a 리소스에는 미삭, there& redboot*용 content&quot ";;). 난 것처럼 content&quot &quot,) 는 다음과 같은 뜻이 있다. 데이터 표현을 할 수 있는 서비스 /dev/raw/raw1 렌더링하려는 버텼다. 일반적으로 행에 구성되어 있으며, 일부 관련 데이터베이스 또는 파일 (예를 들어, 이미지 파일). # 39 의 최대 it& 변환하십시오 user& # 39 의 서비스를 사용할 수 있는 페이로드 JSON 으로 변환하는 것이 서비스 내용을 SQL 명령문입니다. (예:

  • 기존 오토메이티드 (지정값이 쉽게 읽을 수) *:

'동일팔레트에 / 무언가' ('/' 뭔가 경우 이미): 너희가 dell. '/' 와 함께 바꾸시겠습니까 시행하십시오 &quot, 뭔가 내가 열거하십시오 you.&quot.

'동일팔레트에 / 무언가' ('/ 무언가' 존재하지 않는 경우). 내가 뭘 하고, 시행하십시오 &quot 제공하십시오 '/' 에서 이 뭔가 .&quot.

'무언가' POST /: 내가 뭘 하고, 시행하십시오 &quot 제공하십시오 어디서나 운영까지도 go-dell '무언가' as long as you give me / re done.&quot 때 해당 url 을 you& # 39;;

[1]: # sec_5_2_1_1 fielding/pubs/dissertation/rest_arch_style.htm ~ http://www.ics.uci.edu/

해설 (4)
  • 파선-짧은 Answer:*

간단한 규칙에 따르면: Post 를 사용하여 만들고, 업데이트하려면 PUT 사용.

  • 기절해있는 Answer:*

포스트:

  • POST 데이터를 서버로 보내는 데 사용됩니다.

    39 의 url 이 때 유용한 resource& -

    알 수 없는

동일팔레트에:

  • 동일팔레트에 스테이드 서버로 전송하는 데 사용됩니다
  • 39 의 경우에 resource& uirl 알려져 있다.

  • 더 Answer:*

이 질문은 왜 필요한 것은 이해할 수 있도록 해야 하는 것은 문제를 해결하려는 동일팔레트에 제집에는 동일팔레트에 게시물로의 couldn& # 39, t.

39 에서 중요한 역할을 하는 미삭 architecture& 없; s 관점. 우리가 할 수 없이 살았던 동일팔레트에 잘 알려져 있다. 그러나 developer& client 에서 # 39 의 관점에서 볼 때 그의 / 자신의 삶을 많이유 간단해진다는 가능하도록 했다.

이에 앞서 동일팔레트에, 클라이언트 서버, t # 39 을 알고 있는 경우 또는 couldn& 직접 생성된 모든 명이었지만 이미 생성된 것인지 모든 데이터를 전송할 수 있는 서버 개발자가 이러한 모든 문제를 업데이트되도록 방관하겠나. 동일팔레트에 크게 줄었습니다. 동일팔레트에 는 멱등 핸들을 놓고 경쟁 조건 및 동일팔레트에 클라이언트뿐 uirl 선택할 수 있습니다.

해설 (1)

39, & # 39 PATCH& 루비 온 레일즈 4.0 사용하게 됩니다. 대신 할 수 있는 방법을 동일팔레트에 부분 업데이트뿐.

RFC 5789 대한 패치합니다 말한다 (1995년):

&gt 상호 운용성 및 예방, 새로운 방식을 개선할 필요가 있다. 오류가 발생했습니다. 이 방법은 이미 정의된 리소스에는 덮어쓰려면 동일팔레트에 함께 할 수 없으며, 완전히 새로운 바디입니다 재사용됩니다 부분 변경. 그렇지 않으면 프록시와 캐시, 심지어는 클라이언트 및 서버, 얻을 수 있습니다. 또 작업 결과 혼란스럽다. 이미 사용되고 있지만 게시물로의 없이 광범위한 상호 운용성 (예컨대, 표준 방법이 없다. 발견하십시오 패치합니다 포맷 지원). 앞서 언급된 패치합니다 는 HTTP 사양명세를 완전히 정의할 수는 없습니다.

" [면쪽 레일: PATCH 는 HTTP 업데이트뿐 새로운 운영 방법] (http://weblog.rubyonrails.org/2012/2/26/edge-rails-patch-is-the-new-primary-http-method-for-updates/) &quot. 이 설명합니다.

해설 (0)

어떤 위험을 무릅쓰고 언급하는 것은 이미 것 같다고 할 수 있는 것을 기억해야 합니다 uirl 동일팔레트에 있음을 클라이언트뿐 제어하는지 만들 때 리소스에는 기술입니까 끝날 예정이다. 재활용 및 동일팔레트에 중에서 선택할 수 있어 부분에 대한 정확한 클라이언트뿐 얼마나 신뢰할 수 있는 것입니다, 표준화된 제공할 수 있는 어떤 일관된 url 을 통해 해당 URL 구성표는.

39 는 올바른 일을 할 때 완전히 can& 클라이언트뿐 의탁하도록 것 "이라고 했다.

    • 게시물로의 새 항목을 만들기 위해 더 적절한 사용 후 uirl 다시 클라이언트로 보낸 답변서에서.
해설 (10)

아주 간단한 방법, 페이스북 타임라인당 I& # 39 m taking 예입니다.

사례 1: # 39 에 대한 글 올릴 때 네 타임라인을 it& 새로운 신규자료 입력한다. 따라서 이 사건) 이 방법을 사용하기 때문에 게시물로의 방법은 비사양 멱등.

사례 2: 친구 따라 처음 만들 수 있는 경우 주석문입니다 게시물로의 새로운 항목이 데이터베이스입니까 따라서 게시물로의 방법을 사용합니다.

사례 3: 그의 친구 편집할 경우, 이 경우, 그들은 자신들이 주석문입니다 셀명 id 가 업데이트 항목이 새로 만드는 대신 기존 주석문입니다 데이터베이스입니까. 따라서 이 유형의 작업에 대해 동일팔레트에 방법을 사용하여 idempotent.* 어렵기 때문이다.

        • 게시물로의 사용 한 줄로 추가할 수 있는 데이터베이스 및 뭔가 새로운 엔트리여야 동일팔레트에 데이터베이스의 업데이트.
해설 (2)
    • 신뢰성입니다 가장 중요한 고려 있다. Post 메시지 얻을 경우 시스템 상태를 손실됩니다 정의되지 않았습니다. 자동 복구 불가능하다. 최초의 성공적인 재시도하십시오 동일팔레트에 대한 메시지를 전까지만 상태가 정의되지 않았습니다.

예를 들어, 신용 카드 거래를 게시물로의 만들 수 있는 좋은 생각이 없는 것 같습니다.

39 의 URI& 발생할 경우 자동 생성되는 것으로 계속 사용할 수 있습니다) 에 의해 생성된 반군지역 리소스에는 동일팔레트에 URI (빈 리소스에는 가리키는) 를 클라이언트입니다.

또 다른 몇 가지 사항을 고려해야 합니다.

  • POST 무효화합니다뵸遮 캐싱됨 복제본입니다 redboot*용 리소스에는 전체 (더 좋은 consistency)
  • 캐시 (필요한 컨텐츠 위치 및 만료) 동안 게시물로의 토마토는 동일팔레트에 답변은 없습니다.
  • 동일팔레트에 에서 지원되는 브라우저, 방화벽, 자바 ME 는 더 이상 (예:
해설 (6)

또 다른 제안한 차이, I want 하나 더 추가합니다.

    • 방법 '에서' 에서 POST 바디입니다 params 양식 데이터 보낼 수 있습니다
    • X 로렌코디드 korea. 양식 '에서' 의 방법을 동일팔레트에 보내야 바디입니다 params)

헤더입니다 Content-Type:application/x-www-form-urlencoded ''

이에 따라 이 동일팔레트에 방법 또는 multipart data-in 파일을 보낼 수 없습니다.

  • 편집할지 *

&gt. 컨텐츠 유형 &quot application/x-www-form-urlencoded"; 비효율적임 &gt. 송신용입니다 포함된 대량의 이진 데이터 또는 텍스트 &gt. 비 ascii 문자. 컨텐츠 유형 &quot multipart/form-data"; 있어야 합니다. &gt. 사용되는 양식 파일을 포함하는, ascii 가 아닌 데이터 및 제출 &gt. 이진 데이터.

즉 제출됩니다 경우

&gt. 파일, ascii 가 아닌 데이터, 이진 데이터

    • 메서드로부터 게시물로의 콩지름에
해설 (2)