from application.controller import success from application.logger import get_controller_logger from application import config from fastapi import APIRouter, UploadFile, File from util.common import md5hash app_name = config.get('APP_NAME') router = APIRouter() LOGGER = get_controller_logger('BASE') @router.get('/health') def health_check(): return success({ 'name': app_name, 'hash': md5hash(app_name), }) @router.post('/upload') async def upload_file(file: UploadFile = File(...)): filename = file.filename content = await file.read() decoded_content = content.decode('utf-8') LOGGER.info('Received file %s:\n%s' % ( filename, decoded_content )) return success({
from service import item as item_service from model.item import Item from application.controller import success, error from application.logger import get_controller_logger from fastapi import APIRouter, BackgroundTasks from typing import Optional router = APIRouter() LOGGER = get_controller_logger('ITEM') @router.get('/v1/item/{item_id}') def get_item(item_id: int): """ get item info by item id an example with param """ LOGGER.info('Get item with id: %d' % item_id) item = item_service.get_item(item_id) if not item: return error(msg='Cannot found item with id %d' % item_id) return success(item) @router.get('/v1/items') def get_items(keyword: Optional[str] = '', min_price: Optional[float] = -1.0, max_price: Optional[float] = -1.0): """ an example with query :return: