67 lines
1.7 KiB
PHP
Executable File
67 lines
1.7 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Test S3 Direct - Sans framework Wevads
|
|
*/
|
|
|
|
// Désactiver les erreurs pour une sortie JSON propre
|
|
error_reporting(0);
|
|
ini_set('display_errors', 0);
|
|
|
|
// Headers pour JSON
|
|
header('Content-Type: application/json');
|
|
header('Access-Control-Allow-Origin: *');
|
|
header('Access-Control-Allow-Methods: POST, GET, OPTIONS');
|
|
header('Access-Control-Allow-Headers: Content-Type');
|
|
|
|
// Gestion CORS
|
|
if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {
|
|
exit(0);
|
|
}
|
|
|
|
try {
|
|
// Vérifier si c'est un appel pour tester S3
|
|
if ($_POST['action'] !== 'testS3Connection') {
|
|
throw new Exception('Action not supported');
|
|
}
|
|
|
|
// Include AWS SDK autoloader
|
|
require_once __DIR__ . '/../vendor/autoload.php';
|
|
|
|
// Include notre classe AmazonCloud
|
|
require_once __DIR__ . '/../app/libraries/AmazonCloud.php';
|
|
|
|
// Créer instance AmazonCloud
|
|
$amazonCloud = new AmazonCloud();
|
|
|
|
// Tester la connexion
|
|
$testResult = $amazonCloud->testConnection();
|
|
|
|
// Retourner le résultat au format attendu par le JavaScript
|
|
if ($testResult['success']) {
|
|
echo json_encode([
|
|
'status' => 200,
|
|
'message' => $testResult['message'],
|
|
'data' => $testResult['details']
|
|
]);
|
|
} else {
|
|
echo json_encode([
|
|
'status' => 500,
|
|
'message' => $testResult['message'],
|
|
'data' => $testResult['details'] ?? []
|
|
]);
|
|
}
|
|
|
|
} catch (Exception $e) {
|
|
// En cas d'erreur
|
|
echo json_encode([
|
|
'status' => 500,
|
|
'message' => 'Connection test failed: ' . $e->getMessage(),
|
|
'data' => [
|
|
'error' => $e->getMessage(),
|
|
'file' => $e->getFile(),
|
|
'line' => $e->getLine()
|
|
]
|
|
]);
|
|
}
|
|
?>
|