2010-06-25 2 views
0

제어 할 수있는 방대한 양의 데이터가 포함 된 백엔드 웹 서비스가 있고 브라우저 프론트 엔드를 통해 데이터를 가져와야합니다. 프론트 엔드 작업은 페이징 된 테이블에 데이터를 표시하는 것 뿐이지 만 사용자는 필드를 기반으로 데이터를 동적으로 제한 할 수 있어야하며 하나의로드에서 전체 일치하는 데이터 세트를로드 할 수 없습니다.ruby ​​/ java 및 javascript에 대한 큰 데이터 집합을 제한하는 언어

내가 찾고있는 것은 이미 루비 또는 자바 및 자바 스크립트에 대해 이미 성숙한 구현이 있어야하는 제약 조건을 정의하는 데 사용할 표준 언어입니다.

+0

어떤 종류의 웹 서비스입니까? 세부 사항 있어요? 공용 API 또는 WSDL이 있습니까? 일부 웹 서비스에서는 제약 조건을 정의하고 필터링 된 결과 집합을 반환 할 수 있습니다. 모든 웹 서비스를 사용하는 표준 방법이 있는지 확신하지 못합니다. SOAP은 XML을 기반으로하며 다른 RESTful 웹 서비스는 JSON과 같은 다른 데이터 형식을 사용할 수 있습니다. – Teoulas

+0

json/xml을 제공하지만 필터링되지 않은 모든 레코드의 목록을 반환하는 잠긴 REST 웹 서비스입니다. 브라우저가 아닌 앱에만 게재 되었기 때문에 이전에는 작동했습니다. 그러나 이제는 브라우저 프론트 엔드를 작성하라는 요청을 받았으며 데이터를 필터링하는 좋은 방법이 필요합니다. 나는 내가 원한다면 무엇이든 추가하거나 제거 할 수 있고 원하는 어떤 기술이라도 사용할 수 있도록 웹 서비스에 대한 완전한 제어권을 가지고있다. 저는 이것을 소비하는 표준 방법을 찾고 있지 않습니다. 원하는 경우 제약 조건을 정의하는 표준 방법, 쿼리 언어를 찾고 있습니다. – Andreas

답변

0

RESTful 서비스는 표준 HTTP 요청을 사용합니다. 원하는 수의 쿼리 매개 변수를 사용하여 결과를 필터링 할 수 있습니다. 당신이 웹 서비스를 완벽하게 제어 할 수 있기 때문에, 당신 누가

http://my.web.service.com/v1/products.xml?price_gt=50 

입니다 : 예를 들어, 다음과 같은 URL에 GET 요청을 보낼 것 50보다 가격이 더 큰과 (XML에서) 모든 제품을 가져 오기 위해 어떤 종류의 필터링이 이용 가능해야하는지, 어떤 매개 변수를 통해 결정 되어야만 하는지를 결정해야한다. 예를 들어 오프셋 및 제한 매개 변수를 추가하여 특정 양의 레코드를 가져올 수도 있습니다.

브라우저 기반 클라이언트의 경우 리소스/레코드의 HTML 표현이 필요합니다. 대부분의 웹 응용 프로그램에는 사용 가능한 필터링 매개 변수가있는 필터링 양식이 있습니다. 이전 예에서는 제품의 제목/설명에 전체 텍스트 검색을위한 간단한 텍스트 필드를 추가하고 사용자가 원하는 가격대 내에서 제품을 가져올 수 있도록 몇 가지 텍스트 필드 또는 선택 메뉴를 추가 할 수있었습니다.

필자는 사용자에게 제공 할 데이터 및 필터링 기능에 따라 필터링 언어와 웹 인터페이스를 정의하는 표준 방법이 없습니다. 또한 웹 서비스가 작성된 언어와 클라이언트 측에서 간단한 HTML UI 또는 AJAX 기반 UI가 필요한지 여부에 따라 다릅니다.

+0

그래, 그게 효과가있다. 나는 누군가가 이미 "field1> = 10 AND field2 == asd"형식의 간단한 술어를 orm의 안전한 인수로 변환 할 수있는 좋은 솔루션을 생각해 내길 바랐다. 내가 게으르지 않고 그저 일을 대신해야 할 것 같아요. 도와 줘서 고마워요! – Andreas

+0

웹 서비스 작성 언어/프레임 워크는 무엇입니까? Ruby on Rails에는 searchlogic이있다. searchlogic은 필터링 폼을 하나의 케이크로 만든다. – Teoulas