2013-01-13 6 views
3

파이썬에서 HTTP 요청을 시작하고 작은 웹 서버가있는 측면 프로젝트에서 작업합니다. 저에게 생각이 떠올랐습니다 - 모든 파이썬 마이크로 프레임 워크는 http 요청의 속성에 액세스하기위한 자체 모델을 가지고있는 것처럼 보입니다 (예 : 쿼리 문자열 매개 변수, 헤더 등을 얻는 데 사용할 수있는 기본 요청 객체 및 설정을위한 기본 응답 객체 상태 코드, 응답 헤더 등). 그들은 모두 동일한 데이터에 대한 액세스를 허용하며 모든 종류의 바퀴를 다시 발명했습니다.python microframeworks 및 요청 라이브러리

자체 구현이 아닌 requests 라이브러리의 RequestResponse 개체를 사용하는 마이크로 프레임 워크가 있습니까? 요청 라이브러리가 파이썬에서 http 요청을 수행하는 표준 방법이되는 것처럼 보입니다. 이렇게하면 프레임 워크가 특히 최소화 될 것입니다. 또한 포워딩/래핑 요청이 사소하기 때문에 필수적으로 다른 서비스를 함께 묶는 앱을 만들 때도 멋지다. 들어오는 요청에 대해 .url 속성을 변경하고 .prepare()으로 전화하여 요청을 전달할 수 있습니다 (예, 웹 서버 수준에서 수행하는 단순 전달의 경우보다 의미가 있지만 아이디어는 얻을 수 있습니다).

특히이 작업을 수행하는 프레임 워크가없는 경우 유사한 이점이 있습니까? 즉, 들어오는 http 요청 개체도 http 클라이언트로 작동합니다.

편집 : http 요청 개체가 Go에서 작동하는 방식임을 지적하고 싶습니다. 그게 부분적으로 내 질문에 영감을주었습니다. net/http 라이브러리에서 "요청은 서버가 수신하거나 클라이언트가 전송 한 HTTP 요청을 나타냅니다."

+0

확실하지 요청을 사용하여 앱에 modified 술병을 가지고,하지만 어쩌면 [플라스크 (http://flask.pocoo.org) – Gianluca

+0

대부분의 microframeworks이 목적을 위해 WebOb를 사용합니다. WebOb은 수년 전부터 요청을 선행하며 HTTP 응답 대신 HTTP 요청의 구문 분석에 맞지 않을 수 있습니다. –

+0

Flask는 Werkzeug의'BaseRequest' –

답변

3

FlaskWerkzeug을 기준으로합니다. Werkzeug 자체는 BaseRequest을 사용하는 Request을 사용하고 있습니다. 그러나 이것은 Requests 라이브러리가 아닙니다.

요청과 Werkzeug를 모두 사용하여 httpcore library을 만들려면 was a plan이 있지만, 중지 된 것 같습니다. 그것은 양쪽 프로젝트가 발로 차고 있다고 말했다.

어떤 사람들은

+0

을 사용합니다. 링크 덕분입니다. 그것은 많은 문맥을 제공합니다. – danny

관련 문제