Python + Flask - 웹서비스를 시작하다.

웹 프로그래밍의 기본은 서버를 돌리는 것이다.

사용자에게 받은 정보를 서버에서 처리해 주는 것이 가장 큰 목적이다.

파이썬 Flask는 이를 너무나도 쉽게 처리해준다.

Node.js 와 비슷하지만 파이썬만의 장점이 존재한다.

차차 공부해 가면서 파이썬의 매력을 분명 느낄 수 있다고 생각한다.

 

파이썬은 굉장히 쉬운 언어이다. 그렇다고 저급(?)한 언어는 또 아니다.

 

나는 처음 JAVA, JSP 를 시작하였고 그 후에 Node.js 의 매력에 빠져 모든 웹 서비스를

Node.js 로 만들어 본 경험이 있다.

 

하지만 파이썬 Flask를 시작한 후 파이썬도 그에 맘먹는 기능과 편의를 제공한다는

사실을 느낄 수 있었다.

 

우선 Node.js 와 파이썬 Flask 를 비교해 보겠다.

 

Node.js 로는 이렇게 만들 수 있다.

 

var http = require('http');
var express = require('express');

var app = express();

app.use(app.router);

 

var server = http.createServer(app);
server.listen(30000, function(){
    console.log('Server is running at the localhost:30000/');
});

 

app.get('/', function (request, response) {
    fs.readFile('ajax_test.html', function (error, data) {

        response(data.toString());

    });

});

 

이번에는 파이썬 Flask 의 경우다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

from flask import Flask

app = Flask(__name__)

 

@app.route('/', methods=['POST', 'GET'])
def resp():
    return render_template(index.html')

 

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

 

끝이다.

 

두 언어 모두 간단하게 서버를 돌릴 수 있다.

Node.js 진영에서 사용하는 Socket.io 모듈 또한 파이썬에서도 사용 가능하다.

 

파이썬 Flask 를 이용해서 사용자의 정보(로그인 정보)를 어떻게 처리하는지 알아보자.

 

@app.route('/login', methods=['post', 'get'])
def login():
    if request.method == 'POST':
        user = request.form['nm']
        return redirect(url_for('success', name=user))
    else:
        user = request.args.get('nm')
        return redirect(url_for('success', name=user))

 

위의 코드를 보면 route를 이용해서 'localhost:5000/login' 을 통해서 form의 정보를 받는다.

POST방식과 GET방식은 인터넷에 검색해 보면 자세한 설명을 알 수 있다.

 

위의 코드를 좀 더 발전시키면 Database와의 연동을 통해서 로그인 성공/실패를 반환해 줄 수 있다.

 

앞으로 더 많은 파이썬 Flask의 기능을 설명할 것이다.

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
17 PyCLIPS Python Module file 졸리운_곰 2017.05.31 1481
16 A Flask API for serving scikit-learn models file 졸리운_곰 2017.05.31 589
15 tensorflow-kr.pdf [텐서플로우 튜토리얼] 한글 번역본 file 졸리운_곰 2016.11.25 4476
14 TensorFlow의 기본 사용법 졸리운_곰 2016.11.25 604
13 텐서플로우 시작하기 file 졸리운_곰 2016.11.25 773
12 Integrating Python and R Part III: An Extended Example file 졸리운_곰 2016.11.16 527
11 Integrating Python and R Part II – Executing R from Python and Vice Versa 졸리운_곰 2016.11.16 1543
10 Integrating Python and R into a Data Analysis Pipeline – Part 1 졸리운_곰 2016.11.16 635
9 Calling R from Python file 졸리운_곰 2016.11.16 450
8 TensorFlow의 기본 사용법 졸리운_곰 2016.06.11 725
7 텐서플로우 시작하기 file 졸리운_곰 2016.06.11 774
6 기계 학습의 A to Z : 인구 변화 시각화와 예측 file 졸리운_곰 2015.05.21 1736
5 기계 학습의 A to Z : scikit-learn을 활용한 기계 학습(문서 분류) file 졸리운_곰 2015.05.21 2402
4 기계 학습의 A to Z : IPython notebook과 scikit-learn을 활용한 기계 학습 file 졸리운_곰 2015.05.21 2006
3 기계 학습의 A to Z : scikit-learn을 활용한 기계 학습 (군집화, Clustering) file 졸리운_곰 2015.05.21 2084
2 기계 학습의 A to Z : scikit-learn을 활용한 기계 학습 (차원 축소) file 졸리운_곰 2015.05.21 2182
1 기계 학습의 A to Z : scikit-learn을 활용한 기계 학습(모델 평가) [1] file 졸리운_곰 2015.05.21 1411
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED