프로그래밍/Python

Falcon req.get_param()으로 모든 파라미터를 받아보자

Lou Park 2022. 4. 6. 02:05

일반적으로 Falcon에서는 Query parameter에 있는 값을 req.get_param('name')으로 읽어올 수 있다. 하지만 폼데이터 역시 동일한 방법으로 얻어오면 구분은 안가긴 하지만 편할 것이다. 간단한 세팅으로 이를 실현시킬 수 있다.

 

 

application/x-www-form-urlencoded

application/x-www-form-urlencoded로 들어오는 값들도 req.get_param()을 통해 얻고 싶다면 아래 라인을 추가하면 된다.

app.req_options.auto_parse_form_urlencoded = True

 

multipart/form-data

추가로 falcon-multipart라는 모듈 설치가 필요하다.

pip install falcon-multipart

설치가 완료되었다면 MultipartMiddleware라는 미들웨어를 추가한다.

from falcon_multipart.middleware import MultipartMiddleware

app = falcon.API(middleware=[
    MultipartMiddleware(),
    MiddlewareManager(mongo_db)
])