Starlette에 의해 구동. 해당 async
선언은 선택 사항입니다. 문서를 봅니다.
이렇게 하면 사전 설치된 프로덕션 정적 파일 서버, Jinja 템플릿(추가 가져오기 없음) 및 uvloop 기반 프로덕션 웹 서버가 있는 ASGI 앱이 제공되어 자동으로 gzip 압축으로 요청을 처리합니다.
"Python-responder에 매우 만족했습니다. @kennethreitz가 최고를 기록했습니다." —루드락쉬 MK
"ASGI는 모든 종류의 새로운 고성능 웹 서비스를 가능하게 할 것입니다. Responder가 이를 활용하기 시작하는 것을 보는 것은 정말 멋진 일입니다." — Django REST Framework의 Tom Christie 저자
"당신이 새로운 패턴을 탐구하는 것을 좋아합니다. 가 가 가!" — Danny Greenfield, Two Scoops of Django의 저자
Responder에서 사용할 수 있는 기능에 대한 자세한 내용은 설명서의 기능 둘러보기를 참조하세요.
최신 안정 릴리스를 설치하십시오.
pip install --upgrade 'responder'
모든 확장 및 인터페이스에 대한 지원을 포함합니다.
pip install --upgrade 'responder[full]'
개별 선택적 설치 추가 사항은 다음과 같습니다.
또는 저장소에서 직접 설치하십시오.
pip install 'responder[full] @ git+https://github.com/kennethreitz/responder.git'
응답자는 Python 3.6+를 지원합니다.
여기서의 주요 개념은 Flask와 Falcon 모두에서 가져온 장점을 제가 가지고 있는 몇 가지 새로운 아이디어와 함께 단일 프레임워크로 통합하는 것입니다. 또한 Requests 라이브러리에 포함된 API 기본 요소 중 일부를 웹 프레임워크에 넣고 싶었습니다. 따라서 여기서 요청과 많은 유사점을 찾을 수 있습니다.
resp.content
설정하면 바이트가 다시 전송됩니다.resp.text
설정하면 유니코드가 다시 전송되고, resp.html
설정하면 HTML이 다시 전송됩니다.resp.media
설정하면 JSON/YAML이 다시 전송됩니다( .text
/ .html
/ .content
가 이를 재정의함).req.headers
dict(요청에서 직접).resp.status_code
, req.method
, req.url
및 기타 친숙한 친구들입니다. response.media
를 좋아하고 여기에서 사용했습니다. Kubernetes가 서서히 전 세계를 장악하고 있고 모든 작업에 YAML을 사용하고 있기 때문에 JSON 지원 외에도 YAML도 지원하기로 결정했습니다. 콘텐츠 협상과 그 모든 것.on_get
, on_post
등의 메소드 외에도 Responder에는 요청과 마찬가지로 모든 유형의 요청에 대해 호출되는 on_request
메소드가 있습니다.개발 샌드박스를 참조하세요.