2014-05-21 6 views
2

병 (http://bottlepy.org/docs/dev/index.html)을 사용하여 노출하는 API 중 일부가 있습니다.Python Bottle 웹 서비스에 대한 끝점 문서화에 대한 제안

이제 최종 사용자 클라이언트에 대해 이러한 끝점을 문서화하고 좋은 해결책을 찾고 있습니다. 병 응용 프로그램에 정의 된 "경로"와 긴밀하게 통합되어 미래의 모든 변경 사항을 동기화 할 수있는 무언가를 찾고 있습니다. 문서화하려는 주요 영역은 허용되는 HTTP 메소드 유형과 필요한 쿼리 매개 변수입니다.

기본 API에 정의 된 인스턴스가 온라인인지 여부를 쿼리하는 예제 경로를 포함했습니다. 보시다시피 경로는 GET 요청 만 허용하고 "check_valid_instance"함수는 쿼리 매개 변수를 찾으려고합니다. 이 경로 정의를 살펴보면 쿼리 매개 변수가 필요하다는 표시가 없으며 여기에 추가하려고합니다. 도움말 페이지의 어떤 종류의 소스 코드를 모두하고, 또한 외부 적으로는

@app.route("/application/app_instance/is_instance_online", method="GET") def is_instance_online(): _check_valid_instance() function = eval("app_instance.is_instance_online") return _process_request_for_function(function)

위의 경로를 어떤 제안을 환영

http://IP:Port/applicaton/app_instance/is_instance_online?instance=instance_name 

을 다음과 같이 호출 할 것입니다!

감사합니다. 당신이 유사한 구조를 만들 수있는 추가 PARAMS를 들어

+0

유 @처럼 사용할 수 있습니다 경로 ('/ 응용 프로그램/app_instance/is_instance_online/param1 = : param1 & param2 = : param2', 메서드 = '얻을') 와일드 카드 여부를 알고 계십니까? 사용할 수있다. – senthilnathang

답변

0

는 :

다음
COMMANDS = {'is_instance_online': {'mandatory_params': 'instance_name', 
            'description': 'command description'}} 

self.bottle.route('/<command>', method='GET', commands=COMMANDS)(self.command_execute) 

는 전체 API의 JSON 설명을 생성 할 수 있어야 아래와 같이 Automatic Generation of REST API description with json