.Net MVC4 웹 API를 사용하여 RESTful API를 (희망적으로) 구현하고 있습니다. 시스템에 몇 가지 매개 변수를 전달하고 몇 가지 작업을 수행 한 다음 개체 목록을 결과로 반환해야합니다. 특히 나는 두 날짜를 지나서 그들 사이에있는 레코드를 반환합니다. 또한 후속 호출이 시스템에서 재 처리되지 않도록 반환 된 레코드를 추적하고 있습니다.
몇 가지 접근 방식을 고려했습니다.
매개 변수를 하나의 단일 JSON 문자열로 직렬화하고 API에서 분리합니다. http://forums.asp.net/t/1807316.aspx/1
쿼리 문자열에 매개 변수를 전달하십시오.
여러 쿼리 매개 변수를 편안한 API에 전달하는 가장 좋은 방법은 무엇입니까?경로에서 매개 변수 정의 : api / controller / date1 / date2
본질적으로 매개 변수가있는 객체를 전달할 수있는 POST를 사용합니다.
웹 API (현재)가 ODATA를 지원하기 때문에 ODATA 연구 나는 아직이 일을 많이하지 않았으므로 익숙하지 않습니다.
적절한 REST 사례는 데이터를 가져올 때 GET을 사용해야 함을 나타냅니다. 그러나 GET은 nullipotent이어야하며 (부작용은 발생하지 않음) API 시스템에 레코드를 표시하여 부작용을 일으키는 특정 구현이 위반되는지 궁금합니다.
또한 변수 매개 변수를 지원하는 문제로 이어졌습니다. 입력 매개 변수 목록이 변경되면 선택 3에 대한 경로를 많이 정의해야하는 번거 로움이 있습니다. 그리고 매개 변수가 런타임에 정의되면 어떻게 될까요?
어쨌든 내 특정 구현의 경우 어떤 선택이 가장 좋습니까?