2012-03-22 6 views
0

복잡한 형식을 in 매개 변수로 사용하는 WCF Rest 메서드 (webHttpBinding 사용)를 노출하려고합니다. 과거 경험에 비추어 보았을 때 POST/WebInvoke를 사용하여 복잡한 매개 변수를 전달하는 경우에도 메소드가 삽입/업데이트 또는 수정하지 않고 데이터 만 반환하는 경우에도 사용합니다.REST 가져 오기/게시 표준

내 질문은 : POST를 사용하여 데이터를 반환하는 경우에만 복잡한 매개 변수를 전달하는 방법은 REST "표준"을 위반하고, 그렇다면 다른 대안이 있습니다.

참고 : WebGet/GET 동사를 사용하여 매개 변수를 일련 번호로 묶어 URL에 전달하면 URL 크기가 제한되고 다른 제약이 있기 때문에 실행 가능한 솔루션이 아닙니다.

+0

쿼리를 위해 이러한 "복잡한"매개 변수가 필요한 것을 묻고 싶습니다 ... – cHao

+0

데이터베이스에서 개체 목록을 반환해야하는데 복잡한 매개 변수는 하위 유형이 될 수있는 필터 기준이며, 배열, ... –

답변

0

예. 이것은 실제로 RESTful하지 않습니다.

동사 역시 의미가 있습니다. POST은 기본적으로 "이 리소스 아래에 무언가를 추가"한다는 것을 의미합니다. 쿼리를 수행하면서 리소스에 추가하지 않으면 동사를 잘못 사용하는 것입니다.

쿼리가 너무 복잡하여 설정하기 위해 여러 가지 항목을 전달해야하는 경우 ... 이제는 고유 한 리소스가 될 수 있습니다. 당신은 질의를 생성하고, URL을주고, 질의 및/또는 그 결과를 볼 수있는 링크를 줄 수있는 POST를 보낼 수 있습니다.

관련 문제