php_worker 수정

This commit is contained in:
2025-12-23 15:59:40 +09:00
parent 8864a46c8a
commit 454bb77a07

View File

@@ -9,21 +9,15 @@ header('Content-Type: application/json; charset=utf-8');
// 2. 보안 키 체크 (URL 파라미터 key=값)
$configKey = "7EE868F4B36D36B3D86736828F4729EAC4992083"; // 실제 사용할 키값으로 변경하세요
$api_info = [
'@type' => 'response',
'@service' => 'confirms',
'@version' => '1.0.0'
];
$receivedKey = $_GET['key'] ?? '';
$logDir = __DIR__ . '/logs/';
if ($receivedKey !== $configKey) {
http_response_code(403);
$api_info['error'] = [
echo apiResponse([
'code' => '-1',
'message' => 'Unregistered key'
];
echo json_encode($api_info);
]);
exit;
}
@@ -61,36 +55,25 @@ try {
// 들어온 원본($rawData)을 그대로 기록합니다.
writeLog("RAW_RECEIVE | " . $rawData, 'INFO');
// --------------------------------------
// 6. 네이버측에 성공 응답 (202 Accepted)
// 처리가 완료된 것은 아니지만, 접수는 완료되었음을 의미
http_response_code(202);
echo json_encode(
$api_info['error'] = [
echo apiResponse([
'code' => '1',
'message' => 'Request accepted and queued'
]
);
// echo json_encode([
// 'resultCode' => 'S000',
// 'resultMessage' => 'Request accepted and queued',
// 'articleNumber' => $data['articleNumber'] ?? 'N/A'
// ]);
]);
} catch (Exception $e) {
// 7. 장애 발생 시 로그 기록 (시스템 로그)
$api_info['error'] = [
'code' => '-1',
'message' => $e->getMessage()
];
writeLog( json_encode($api_info) ." | Received: " . json_encode($data), 'ERROR');
http_response_code(500);
echo json_encode($api_info);
echo apiResponse([
'code' => '-1',
'message' => $e->getMessage()
]);
}
/**
@@ -119,4 +102,15 @@ function writeLog($message, $level = 'ERROR') {
// 5. 파일 기록 (FILE_APPEND로 기존 내용 뒤에 추가)
file_put_contents($logFile, $formattedMessage, FILE_APPEND);
}
// 도우미 함수 정의
function apiResponse($error = null) {
$base = [
'@type' => 'response',
'@service' => 'confirms',
'@version' => '1.0.0'
];
if ($error) $base['error'] = $error;
return json_encode($base);
}