2009-08-30 2 views
0

저는 이번 주말에 O'Reilly의 RESTful 웹 서비스를 해왔고 클라이언트가 서버에서 비즈니스 프로세스를 시작하려고 할 때를 알 수없는 것 같습니다.REST로 비즈니스 프로세스 실행

예를 들어 엔터프라이즈의 주어진 호스트에서 관리 작업을 시작하고 싶습니다. 따라서 HTTP의 어떤 동사가 아래에 해당합니까?

나는 POST (p) (오버로드 된 POST)에서 "매개 변수 Z가있는 시스템 Y에 대해 작업 X를 실행하십시오."라는 HTTP 요청 본문에서 XML 요청을 생성한다고 생각합니다.

누구나 여전히 REST를 준수하는지 확인할 수 있습니까?

덕분에, 마틴

만큼 당신이 리소스로 작업 요청을 치료로
+0

이 점에 관해 더 생각해 보면, 내 생각에는 RPC 누출과 같은 냄새가 난다. 스케줄러와 같은 서비스에 대한 추가 리소스를 고려하는 것이 더 좋을 것이라고 생각합니다. 작업 시작 요청을 POST하면 서비스 시작 시간을 결정하는 서비스의 작업 스케줄링 팩토리에 배치됩니다. 작업 (예제 세부 사항). 누군가? –

답변

1

는, 결과는 완전히 편안하고 될 수 있습니다.

작업 요청 모음에 게시하면 jobrequest 리소스를 해당 컬렉션의 하위로 만들 수 있습니다. POST 요청의 Location 헤더에 URL을 리턴 할 수 있도록 작업 요청에 특정 양식을 지정해야합니다. 해당 URL에서 GET을 수행하면 작업 요청의 현재 상태를 볼 수 있습니다. 작업이 완료되면 작업 요청에 대한 링크를 추가하여 작업 결과를 볼 수 있습니다.

+0

감사 Darrel :), 나는 주소 지정의 이유로 일자리 요청을 유지하는 것을 고려하지 않았으며 항상 좋은 것입니다. –

+0

하나의 리소스를 다른 리소스로 변환하고 동일한 비즈니스 프로세스로 취급하려는 경우 어떻게 RESTful 방식으로 만들 수 있습니까? – JPReddy

+0

@JReddy 질문을 이해한다면 BarResource를 입력으로 사용하여 FooResource를 생성하는'POST/FooResources? source =/BarResource/25'와 같은 것을 시도해보십시오. 또한 BarResource의 표현을 요청의 본문으로 POST 할 수 있습니다. –