ERP-node/backend-node/src/routes/openApiProxyRoutes.ts

39 lines
1.1 KiB
TypeScript

/**
* OpenAPI 프록시 라우트
* - 외부 API 호출을 프록시하는 라우트
*/
import { Router } from 'express';
import { OpenApiProxyController } from '../controllers/openApiProxyController';
// import { authenticateToken } from '../middleware/authMiddleware'; // 공개 API는 인증 불필요
const router = Router();
const controller = new OpenApiProxyController();
// 날씨, 환율 등 공개 정보는 인증 없이 접근 가능
// router.use(authenticateToken);
/**
* GET /api/open-api/weather
* 날씨 정보 조회 (인증 불필요)
* Query: city (도시명, 기본값: Seoul)
*/
router.get('/weather', (req, res) => controller.getWeather(req, res));
/**
* GET /api/open-api/exchange-rate
* 환율 정보 조회
* Query: base (기준 통화, 기본값: KRW), target (대상 통화, 기본값: USD)
*/
router.get('/exchange-rate', (req, res) => controller.getExchangeRate(req, res));
/**
* POST /api/open-api/geocode
* 주소를 좌표로 변환 (Geocoding)
* Body: { address: string }
*/
router.post('/geocode', (req, res) => controller.geocode(req, res));
export default router;