본문 바로가기
파이썬/파이썬 플라스크

ep 14-1. WSGI, Werkzeug

by L_SU 2022. 11. 17.

WSGI

WSGI란 웹 서버 게이트웨이 인터페이스(Web Server Gateway)의 줄임말로,

웹 서버와 웹 애플리케이션의 인터페이스를 위한 파이썬 프레임워크다.

(프로토콜의 개념으로 이해할 수 있음)

 

구조

- 서버와 앱 양단으로 나뉘어져 있음

 

리퀘스트를 처리하기하는 방법

서버에서 환경 정보와 콜백함수를 앱에 제공

-> 앱은 그 요청 처리 및 콜백 함수를 통해 서버에 응답

 

Werkzeug(벨저크)

WSGI는 인터페이스 설계를 위한 규약인 반면,

werkzeug는 이 규약을 지켜 설계하게 도와주는 도구이다.

ex) request, response와 같은 명령 실행이 werkzeug에 의해 이루어짐

 

 

정규표현식

특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어

파이썬뿐만 아니라 문자열을 처리하는 모든 곳에서 사용됨

 

path converter

url route를 지정하는 부분에서 포멧 변수를 사용하지 않고,

편하게 사용할 수 있게 해주는 문법

 

다음과 같이 path를 이용해 인자를 받을 수 있는데 그 이유는

  class PathConverter(BaseConverter):
      """Like the default :class:`UnicodeConverter`, but it also matches
         slashes.  This is useful for wikis and similar applications::

      Rule('/<path:wikipage>')
      Rule('/<path:wikipage>/edit')

  :param map: the :class:`Map`.
  """
  regex = '[^/].*?'
  weight = 200

PathConverter 클래스에서 정규표현식을 regex로 사용했기 때문이다.