php_worker 수정
This commit is contained in:
@@ -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()
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -120,3 +103,14 @@ 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);
|
||||
}
|
||||
Reference in New Issue
Block a user