Python flask를 사용하는 경우
현재 url주소를 알아내는 방법은 무엇일까요? 아래에서 자세하게 알아봅니다.
flask.request 모듈을 사용하면 현재 주소에 관한 다양한 정보를 얻을 수 있습니다. 아래 예제를 통해 어떤 값을 얻을 수 있는지 날아보세요~
# Flask.request 모듈을 사용한 url 정보얻기 방법
Python에서 flask.request는 매우 많이 사용됩니다. 필요한 url 정보도 얻을 수 있고 ip값도 확인할 수 있습니다. 만약 ip 주소를 알아야하는 경우라면 아래와 같습니다. 먼저 모든 함수는 아래와 같이 모듈을 추가하도록 합니다.
from flask import request
! ip 주소를 얻는 방법
현재의 ip주소를 반환하는 방법입니다. 참고로 아래의 명령어는 remote 주소만 반환하므로 localhost 등의 내부 접속의 경우 에러가 발생하게 됩니다.
from flask import request
print request.remote_addr
위와 같이 실행하면 접속된 ip를 출력해줍니다.
! 접근 주소, url, path 정보 알아내기
request 모듈이 가장 많이 사용되는 부분 중 하나가 url 주소와 파라미터 관련 정보를 얻기 위해서입니다. 아래는 다양한 url 주소, path 값을 확인하는 예제코드입니다. 만약 현재 주소가 아래와 같다면?
현재주소 - https://webisfree.com/contact/contact.html?who=naya
각각의 메소드는 아래처럼 결과를 반환합니다. 아래의 메소드 역시 모듈을 우선 추가해주어야만 합니다.
from flask import request
이제 목적에 따라서 각각 아래의 내장함수를 사용하도록 합니다.
request.full_path // 쿼리스트링 포함 전체 path 정보
Ex) /contact/contact.html?who=naya
request.path // 쿼리를 제외한 path 정보
Ex) /contact/contact.html
request.url // 전체 url, host정보 및 path, 쿼리스트링 모두
Ex) https://webisfree.com/contact/contact.html?who=naya
request.base_url // host 및 path 정보
Ex) https://webisfree.com/contact/contact.html
request.url_root // host 및 path 정보
Ex) https://webisfree.com/contact/
request.host // host값
Ex) webisfree.com
request.host_url // host, protocol 값
Ex) https://webisfree.com
그리고 request.script_root가 있습니다.
그럼 host 정보, url 및 쿼리스트링을 알아야한다면 위 방법으로 쉽게 찾아보세요!!