Files
1st-project/backend/app/main.py

42 lines
1.1 KiB
Python

from fastapi import FastAPI
from pydantic import BaseModel
from app.model_load import use_model # predictor.py에서 함수 import
from app.exe import predict_url_maliciousness
from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()
# FastAPI 인스턴스에 CORS 미들웨어 추가
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # 또는 ["http://localhost:3000"] (프론트 URL)
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
# 요청 데이터 구조 정의
class UrlRequest(BaseModel):
url: str
@app.get("/")
def root():
return {"message": "URL 악성 판별기 FastAPI 서버 정상 작동 중!"}
@app.post("/predict")
def predict(request: UrlRequest):
url = request.url
result_model1 = use_model(url)
result_model2 = predict_url_maliciousness(url)
# print("model1 : ")
# print(result_model1.values())
# print("model2 : ")
# print(result_model2.values())
return {
"url" : url,
"model1": result_model1,
"model2": result_model2
}