URL Routes

라우트는 url을 따라 이동시키는 것을 의미합니다.

url은 유저가 쉽게 찾아볼 수 있도록 웹페이지의 주소를 나타내는 것이고, routes는 특정 페이지와 그 주소를 연결하는 것을 뜻합니다. 이 부분을 끝내면 우리는 첫 웹페이지를 띄울 수 있게 됩니다.

Example of URL

./route_example.png

github의 notification관련 페이지의 url입니다.

github.com은 공통 주소입니다. 뒤에 붙는 notifications 부분의 경우 페이지마다 다르게 부여되는 주소입니다. routing은 뒤에 붙는 notification부분을 변경할 때, 내 웹서버 안에 서로 다른 페이지들을 이동시키는 기능을 수행합니다.

Flask 코드 예시 1 - Index Web Page

코드를 통해서 예시를 들어봅시다.

./route_flask.png

이렇게 작성하면 라우팅이 완성됩니다. 매우 쉽게 첫 페이지를 띄울 수 있습니다. application.py안에 위에 함수와 @(데코레이터)를 사용한 코드를 통해 라우팅을 수행합니다.

간단하게 보면, route 함수 안에 str형태로 우리가 원하는 URL을 넣어줍니다. 그러면 해당 URL에 접속했을 때, 데코레이터(@app.route("/")) 바로 밑에 있는 함수를 실행하게 됩니다.

자 이제 첫번째 페이지를 띄워봅시다. application.py 를 실행하시면 됩니다. 아래의 코드를 통해서 실행하시면 됩니다.

python3 application.py

여러 복잡한 메시지와 함께, 실행이 되는 것을 확인해보실 수 있습니다. 저와 동일하게 코드를 작성하셨을 경우

http://0.0.0.0:5000/ 를 통해 웹사이트를 확인해볼 수 있습니다. hello라는 문구가 정상적으로 실행이 되었다면 성공적입니다.

함수의 기능

함수의 기능은 무언가를 수행하도록 하는 것입니다. 여기서는 url로 접속을 시도했을 때, 데코레이터 바로 아래에 있는 함수를 실행시킵니다.

그리고 return의 경우 웹페이지로 어떤 것을 ‘반환’해줄 지를 말하는 것입니다.

Code Example2 - Other URL Routing

이제 다른 url도 만들어봅시다. 이 부분의 경우 여러분의 url개념 이해를 도와드리기 위함입니다.

./route_example2.png

이 코드를 살펴봅시다. 이제 test라는 url이 라우팅됩니다.

http://0.0.0.0:5000/test 를 접속하게 되면 test라는 문구가 출력됩니다. 아까 처음 url예시에서 본 것을 생각해보시면 편합니다. github.com은 우리의 url에서 http://0.0.0.0:5000을 의미하게 됩니다. 그리고 /notification의 경우 우리 url에서는 test에 해당하게 됩니다.


지금까지는 간단한 글자를 반환해주었는데, 이후 강의에서는 HTML을 통해 실제 웹페이지를 반환하도록 해줄 것입니다.


Copyright © 2023 Junseo Ko. 본 내용은 모두 제가 작성한 도큐먼트입니다. 무단 퍼가기와 재생산을 금지합니다. 문의: piglets.frizzle0v@icloud.com