반응형 Flask5 [Flask] 이미지 반환하는 라우터(url 호출시 이미지 반환하는 방법) Flask에서 이미지 반환하는 라우터 작성 방법 아래 이미지는 포스트맨을 캡쳐한 사진이다. http://127.0.0.1:5000/api/image/sample이라는 주소를 전송하면 sample이미지가 보여진다. 위 예시와 같이 Flask에서 특정 url을 호출했을 때 이미지를 반환하는 방법에 대해 설명해보겠습니다. 코드는 아주 간단합니다. from flask import Flask, jsonify, request from flask import Blueprint from flask import send_file class ImageRouters: @staticmethod def get_blueprint(mongodb): api_blueprint = Blueprint('api', __name__) @ap.. 2023. 7. 13. [Flask] MongoDB에서 TypeError 문제(_id) 1. id를 제외하고 직렬화를 시키거나 2. id를 직렬화할 수 있게 따로 조치하거나 둘 중 하나의 방법을 사용할 수 있다. 1. id를 제외하고 직렬화 시키기 from flask import Flask, jsonify, request from pymongo import MongoClient client = MongoClient('localhost', 27017) db = self.client['mydatabase'] collection = self.db['mycollection'] jsonify(list(self.collection.find({}, {'_id': 0}))) 2. id를 포함하여 직렬화 str() 함수를 사용하여 _id 값을 문자열로 변환한 뒤 json.loads() 함수 사용하여 jso.. 2023. 7. 4. [Flask] 직렬화 오류 raise TypeError(f"Object of type {type(o).__name__} is not JSON serializable") TypeError: Object of type Cursor is not JSON serializable 으이구! 커서 객체를 json으로 바꾸려니까 에러가 나쥬! from flask import Flask, jsonify, request from pymongo import MongoClient collection.find()은 컬렉션에서 조건 없이 모든 문서를 조회하는 메서드다. 이를 호출하면 커서(Cursor) 객체가 반환 되는데, 커서는 실제 데이터를 포함하고 있는 반복 가능한 객체다. list(collection.find())을 사용하면 커서 객체를 리스트로 .. 2023. 7. 3. [Flask] Blueprint로 라우터 관리하기 Blueprint는 Flask 애플리케이션의 라우트와 관련된 기능을 모듈화하고 조직화하는 데 사용된다. 아래는 Flask 앱과 라우터를 분리하여 구축하는 예시 코드입니다. app.py from flask import Flask from routers import api_blueprint app = Flask(__name__) app.register_blueprint(api_blueprint) if __name__ == '__main__': app.run() routers.py from flask import Blueprint api_blueprint = Blueprint('api', __name__) @api_blueprint.route('/') def index(): return 'Hello, Worl.. 2023. 7. 3. 이전 1 2 다음 728x90 반응형