Example #1
0
    die;
}
// Die if the request is an option method.
if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    errorResult('Request method OPTION is not supported.');
}
if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'POST') {
    if (($input = @file_get_contents('php://input')) === FALSE) {
        errorResult('POST query without postbody.');
    }
} elseif (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'GET') {
    if (!isset($_GET['payload']) || ($input = $_GET['payload']) === FALSE) {
        errorResult('GET query without "payload" param.');
    }
} else {
    errorResult('Can not detect the HTTP method of incoming query.');
}
try {
    $query = Query::parse($input);
} catch (ServerException $e) {
    errorResult($e->getMessage());
}
$server = new Server();
// services
require_once 'api/sample.php';
$sampleService = new SampleService();
$server->register('sample', $sampleService);
// run
$result = $server->run($query);
echo Result::stringify($result);
ob_flush();