내일배움캠프 1주차 # 기초강의학습(2)
< 4강 복습 >
1. Flask
서버를 만들 수 있는 프레임워크
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return 'This is Home!'
if __name__ == '__main__':
app.run('0.0.0.0',port=5000,debug=True)
1) html 파일 불러오기
서버에서 html 파일을 불러오기 위해서는 flask의 내장함수인 'render_template' 을 이용한다.
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def home():
return render_template('index.html')
if __name__ == '__main__':
app.run('0.0.0.0', port=5000, debug=True)
2) GET/POST 요청에서 클라이언트의 데이터를 얻는 방법
- 'GET' 요청 API코드
/test라는 창구에 GET방식으로 'title_give'라는 값을 받아와 'title_receive'라는 변수에 담고 다시 response를 돌려준다.
@app.route('/test', methods=['GET'])
def test_get():
title_receive = request.args.get('title_give')
print(title_receive)
return jsonify({'result':'success', 'msg': '이 요청은 GET!'})
- 'GET' 요청확인 Ajax코드
/test라는 창구에 GET방식으로 'title_give'라는 변수에 '봄날은간다'라는 값을 담아 서버에 보내주고, response를 받아온다.
$.ajax({
type: "GET",
url: "/test?title_give=봄날은간다",
data: {},
success: function(response){
console.log(response)
}
})
- 'POST' 요청 API코드
/test라는 창구에 POST방식으로 'title_give'라는 값을 받아와 'title_receive'라는 변수에 담고 다시 response를 돌려준다.
@app.route('/test', methods=['POST'])
def test_post():
title_receive = request.form['title_give']
print(title_receive)
return jsonify({'result':'success', 'msg': '이 요청은 POST!'})
- 'POST' 요청확인 Ajax코드
/test라는 창구에 POST방식으로 'title_give'라는 변수에 '봄날은간다'라는 값을 담아 서버에 보내주고, response를 받아온다
$.ajax({
type: "POST",
url: "/test",
data: { title_give:'봄날은간다' },
success: function(response){
console.log(response)
}
})
< 5강 복습 >
1. 내 프로젝트를 서버에 올리기
언제나 클라이언트의 요청에 응답하기 위해서는 컴퓨터가 항상 켜져있는상태여야하고,
공개 IP주소로 나의 웹서비스에 접근할 수 있게 해야한다.
따라서 AWS라는 클라우드 서비스에서 EC2서버를 이용해 접속한다.(Filezilla로 EC2에 업로드)
업로드를 하기전에 pip로 패키지를 설치해준다(flask,pymongo,dnspython)
마지막으로 AWS에서 5000포트를 열어주고, git-bash로 nohup python app.py & 를 실행하여 컴퓨터가 계속 켜져있도록 설정 해준다.
< 느낀 점 >
서버와 클라이언트 통신하는 부분같은 경우에는 원래 처음 강의를 들었을때 이해하기 어려운 부분이었다. 하지만 강의를 여러번 복습하고나니 자연적으로 '아 이게 이거고 이래서 동작하는구나!!' 라고 깨달을 수 있었다~!
오늘까지는 강의를 복습하는 시간을 가졌고. 내일부터는 본격적으로 미니프로젝트를 시행할텐데, 지금까지 내가 배운 것들이 모두 헛되지않게 잘 활용하는 시간이 되었으면 좋겠다 !!!
Author And Source
이 문제에 관하여(내일배움캠프 1주차 # 기초강의학습(2)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ansaudwn123/내일배움캠프-1주차-기초강의학습2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)