나는 다음과 같은 디자인 패턴을 가로 질러 비동기 작업의 RESTful API를 연구하는 동안 : pendingOperation REST : HTTP 303이 비동기 작업에 유해한 것으로 간주됩니까?
GET uri:pendingOperation
반환 :
POST uri:longOperation
반환 :
- HTTP 202
- 위치 : URI를 :
- 작업이 실행중인 경우
- 진행률 보고서를 반환합니다.
- 작업이 완료되면
- HTTP 303
- 위치 : URI : operationResponse
GET uri:operationResponse
- 비동기의 응답 운이 좋은 수술
나는 마지막 단계를 의심 스럽다. 비동기 작업이
HTTP GET
에 적합하지 않은 오류 코드 (예 :HTTP 409 ("Conflict")
)로 완료되면 어떻게되는지 고려하십시오. pendingOperationURI 반대 : operationResponse- 는 URI와 관련된 응답을 가리 할 필요가 없습니다
HTTP 303
있습니까? - 이렇게하면
HTTP 303
이 유해한 것으로 간주됩니까? 그렇지 않다면, 왜? - 우리가 할 수있는 최선인가, 아니면 더 좋은 방법이 있습니까?
- 작업이 실행중인 경우