파이썬 이것저것/파이썬 백엔드 4

[python] Flask 배포하기

웹 서버와 SGI 웹 서버란 실제로 사용자의 요청을 받고 응답을 주는 엔진엑스(Nginx), 아파치(Apache) 등을 말하며, 네트워크 통신의 전반적인 부분을 담당한다.Nginx, 아파치와 같은 웹서버와 플라스크 애플리케이션 등 웹 애플리케이션 사이에서는 통신이 필요하다. 서버 게이트웨이 인터페이스(SGI)가 바로 그 통신 규약, 이 규약을 통해 웹 서버는 사용자의 HTTP 요청을 웹 애플리케이션에 전달하고, 애플리케이션의 응답을 다시 사용자에게 전달한다. 플라스크에서의 SGI는 그중에서도 플라스크 웹 애플리케이션과 웹 서버 사이의 통신 방식만을 정의한다. Flask run 만으로도 내부적으로 간단한 WSGI 서버를 실행시킨다.그러나 이것은 운영 환경에서 사용하기엔 부족한 면이 많음 - 성능 이슈 : ..

[python] Flask Restapi 구현

Restful api 컴퓨터나 스마트폰 애플리케이션이 서버에 정보를 요청하거나 보낼 수 있는 방법 중 하나이다. 서버는 정보가 저장된 컴퓨터를 말하고, 클라이언트는 그 정보를 사용하려는 사람이나 애플리케이션을 의미한다. RESTful API는 정보 교환을 단순하고 효율적으로 만들어줌, 웹사이트나 애플리케이션에서 중요한 역할을 하게 됨 HTTP 매서드 이해하기HTTP 메서드는 서버와 클라이언트가 어떻게 대화 할것인지 정한 규칙 GET(조회) : 클라이언트가 서버에게 "이 정보 좀 줘"라고 요청하는 것임, 웹 브라우저에서 웹페이지를 열 때, 서버에게 그 페이지의 정보를 가져오라고 요청 POST(생성) : 클라이언트가 서버에게 새로운 정보를 보내는 것, 새글을 블로그에 올릴 때 그 글의 내용을 서버에 올리라는..

[Python] Flask 세션과 쿠키

세션 과 쿠키웹 애플리케이션에 상태를 관리하는 두 가지 주요기술은 session과 쿠키임 웹은 기본적으로 상태를 유지않는(stateless) 특성이 있는데, 이는 웹서버가 클라이언트의 요청 사이의 상태 정보를 저장하지 않는다는 것을 의미함 웹페이지를 이동할 때 마다 사용자가 누구인지, 어떤 작업을 햇는지 등의 정보를 매번 인식 세션과 쿠키는 상태를 유지하지 않는 웹의 한계를 극복하기 위해 사용됨 세션 : 세션은 서버 측에서 사용자의 상태 정보를 유지, 사용자가 웹 애플리케이션에 로그인 하면, 서버는 고유한 세션 ID를 생성하고, 이를 쿠키로 클라이언트에 전송한다. 클라이언트는 이 세션 ID를 가진 쿠키를 사용해 이후 요청에서 자신을 인증하고 서버는 이 ID를 사용해 사용자의 세션 데이터에 접근한다. 세션..

[Flask] Flask + mysql 연결

Flask에서 DB와 연결을 하려면 여러 방법이 있지만, 일반적으로 많이 사용되는 것은 SQL-Alchemy를 사용하여 연결하는 것이다. SQL-Alchemy는 객체-관계 매핑을 제공하여 파이썬 클래스를 데이터베이스 테이블과 연결을 통해 보다 직관적이고 유지관리를 쉽게 해준다. 데이터베이스 종류는다양하지만, 일반적으로 많이 사용되는 MySQL을 사용한다고 가정한다.Flask에서  DB를 접속하려면, Flask-SQLAlchemy와 mysql연결을 위한 pymysql을 설치한다.  - 필요한 패키지 설치pip install Flaskpip install Flask-SQLAlchemy## db 종류에 따라 선택해서 설치하면 됨pip install pymysql   - 사전 환경설정먼저 PC에 MySQL을 설..