PYTHON

PYTHON - 웹서버 실행 해보기 (flask)

seongjin08 2022. 11. 22. 13:06

PYTHON을 깔았다면

PIP 가 있을 것이다.

 

pip install flask

or

pip3 install flask

 

pip3 show flask

 

server.py

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hellow_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

python3 server.py

실행 하면

hello woeld  가 보이는걸 확인 할 수 있다.

 

html 파일 불러오기 

from flask import Flask,render_template

app = Flask(__name__)

@app.route('/')
def hellow_world():
    return 'Hello World!'

@app.route('/test')
def test():
    return render_template('index.html')

if __name__ == '__main__':
    app.run()

코드 작성 후  html 파일을 생성 해준다.

여기서 파일의 위치가 중요하다

tempates 라는 폴더를 생성 후 html 파일을 이 폴더 안에 생성해 준다.

 

./tempates/index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
    HTML SUCEESS!

    <div>뭘봐</div>
</body>
</html>

 

  html 파일을 잘 불러오는 걸 확인 할 수 있다.

 

method 변경하여 데이터 주고 받기

./server.py

from flask import Flask,render_template,request,json,jsonify

app = Flask(__name__)

@app.route('/')
def hellow_world():
    return 'Hello World!'

@app.route('/test',methods =['POST'])
def test():
    params = request.get_json()
    print('받은 Json 데이터',params)

    response = {
        'result' : 'ok'
    }

    return jsonify(response)

if __name__ == '__main__':
    app.run(debug=True,host='0.0.0.0',port=3000)

 

./server2.py

import requests
import json 

url = 'http://127.0.0.1:3000/test'

headers = {
    'Content-Type':'application/json'
}

temp = {
    'color':'black',
    'size':200
}

data = json.dumps(temp)

response = requests.post(url,headers = headers, data = data)

print('response',response)
print('response.text',response.text)

server.py

server2.py