반응형
728x90
1.Flask 설치하기
pip install flask
2. Rest API 설계하기
아래와 같이 간단한 REST API를 설계해보겠습니다.
- GET /api/hello : "Hello, World!" 문자열 반환
- GET /api/items : 모든 아이템 조회
- GET /api/items/{id} : 특정 아이템 조회
- POST /api/items : 새로운 아이템 생성
- PUT /api/items/{id} : 특정 아이템 수정
- DELETE /api/items/{id} : 특정 아이템 삭제
3. Flask 애플리케이션 구현하기
from flask import Flask, jsonify, request
app = Flask(__name__)
items = [
{"id": 1, "name": "apple", "price": 1000},
{"id": 2, "name": "banana", "price": 1500},
{"id": 3, "name": "orange", "price": 2000}
]
# GET /api/hello
@app.route("/api/hello")
def hello():
return "Hello, World!"
# GET /api/items
@app.route("/api/items")
def get_items():
return jsonify(items)
# GET /api/items/{id}
@app.route("/api/items/<int:item_id>")
def get_item(item_id):
for item in items:
if item["id"] == item_id:
return jsonify(item)
return jsonify({"message": "Item not found"}), 404
# POST /api/items
@app.route("/api/items", methods=["POST"])
def create_item():
item = request.get_json()
items.append(item)
return jsonify(item), 201
# PUT /api/items/{id}
@app.route("/api/items/<int:item_id>", methods=["PUT"])
def update_item(item_id):
item = request.get_json()
for i in range(len(items)):
if items[i]["id"] == item_id:
items[i] = item
return jsonify(item)
return jsonify({"message": "Item not found"}), 404
# DELETE /api/items/{id}
@app.route("/api/items/<int:item_id>", methods=["DELETE"])
def delete_item(item_id):
for i in range(len(items)):
if items[i]["id"] == item_id:
del items[i]
return jsonify({"message": "Item deleted"}), 200
return jsonify({"message": "Item not found"}), 404
if __name__ == "__main__":
app.run(debug=True)
4. REST API 서버 실행하기
python app.py
5. REST API 서버 테스트 하기
반응형
'CLOUD' 카테고리의 다른 글
AWS, GCP, Azure, Openshift, NCP 비교 - solution, Third Party, storage (0) | 2023.03.02 |
---|---|
kubernetes와 openshift 비교 (0) | 2023.03.02 |
AWS, GCP, Azure, Openshift, NCP 비교 (0) | 2023.03.01 |
[Google Cloud Study Jam] 클라우드 스터디잼 쿠버네티스 심화과정 후기 (0) | 2022.11.02 |
[Google Cloud Study Jam] 클라우드 스터디잼 쿠버네티스 중급과정 후기 (0) | 2022.08.18 |