- URL 하드코딩 → .env APP_URL 기반 동적 URL로 변경 - DB 연결 하드코딩 → .env 기반으로 변경 - MySQL strict mode DATE 오류 수정
49 lines
1.3 KiB
PHP
49 lines
1.3 KiB
PHP
<?php
|
|
/**
|
|
* Open DART 기업개황 조회 API (프록시 방식)
|
|
*
|
|
* 멀티테넌시 환경 지원:
|
|
* - 클라이언트의 IP가 아닌 서버의 IP로 Open DART API 호출
|
|
* - Open DART에 등록된 서버 IP만 사용하므로 여러 클라이언트 지원 가능
|
|
*
|
|
* 동작 흐름:
|
|
* 클라이언트 → 회사 서버 (이 파일) → Open DART API → 회사 서버 → 클라이언트
|
|
*/
|
|
|
|
header('Content-Type: application/json; charset=utf-8');
|
|
|
|
// 프록시 헬퍼 함수 로드
|
|
require_once __DIR__ . '/proxy_helper.php';
|
|
|
|
$corp_code = isset($_GET['corp_code']) ? trim($_GET['corp_code']) : '';
|
|
|
|
if (empty($corp_code)) {
|
|
echo json_encode(['status' => 'error', 'message' => 'Corp Code is required.']);
|
|
exit;
|
|
}
|
|
|
|
// 프록시를 통해 Open DART API 호출
|
|
$result = callOpenDartAPI('company.json', [
|
|
'corp_code' => $corp_code
|
|
], null, [
|
|
'timeout' => 30,
|
|
'return_type' => 'raw' // Open DART의 JSON 응답을 그대로 반환
|
|
]);
|
|
|
|
if (!$result['success']) {
|
|
// Open DART의 원본 응답 형식 유지
|
|
if ($result['raw_response']) {
|
|
echo $result['raw_response'];
|
|
} else {
|
|
echo json_encode([
|
|
'status' => 'error',
|
|
'message' => $result['error']
|
|
]);
|
|
}
|
|
exit;
|
|
}
|
|
|
|
// Open DART의 원본 JSON 응답을 그대로 반환
|
|
echo $result['raw_response'];
|
|
?>
|