[HttpGet]
개체 컬렉션을 반환하는 GetCats()
이라는 웹 API 메서드가 있습니다.복잡한 매개 변수를 GET 요청으로 전달
페이징을 허용하는 매개 변수 skip
및 take
을 추가했습니다.
그러나 요구 사항이 증가했으며 이제는 "PropertyName", "Value", "Type"
형식의 필터 모음의 경우 복잡한 필터링이 발생할 수 있습니다. "CatName", "Mittens", "EqualTo"
및 정렬 필터는 "PropertyName", "Direction"
형식으로. "CatAge", "Descending"
.
Skip and Take도 필요합니다.
이 필터 객체를 빌드하면 크기가 매우 커질 수 있습니다. 결과적으로 은으로 보이지 않으므로 더 이상 QueryString에 넣을 수 없습니다. 특히 여러 필터가있는 경우 특히 함께 그룹화 할 방법이 필요합니다.
해결책을 찾고 있는데요. [HttpPost]
을 사용할 수 있다고 생각합니다. 필터를 게시하면되지만 HTTP 방식에서는 잘못된 것처럼 보입니다. 어떻게 든 개체를 쿼리 문자열에 인코딩하고 정상적으로 디코딩 할 수 있는지 잘 모르겠습니다.
누구든지이 문제를 해결할 수 있습니까? 복잡한 데이터를 GET에 전달하여 데이터 컬렉션을 검색하는 것이 일반적인 문제인 것으로 의심됩니다.
예, 쿼리 문자열에 절대적으로 복잡한 개체를 전달할 수 있습니다. 기본적으로 WebAPI는 게시물에 대한 본문의 가져 오기 및 개체에 대한 쿼리 문자열의 개체를 필요로합니다. 그리고 네, URL이 용량에 도달하면 항상 복잡한 객체를 게시 할 수 있습니다. –