This source file includes following definitions.
- setState
- getState
<?php
require_once '../../resources/portabilityLayer.php';
$stateFile = sys_get_temp_dir() . "/access-control-preflight-headers-status";
function setState($newState, $file)
{
file_put_contents($file, $newState);
}
function getState($file)
{
if (!file_exists($file)) {
return "";
}
return file_get_contents($file);
}
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: X-Custom-Header");
header("Access-Control-Max-Age: 0");
if ($_SERVER["REQUEST_METHOD"] == "OPTIONS") {
if (isset($_SERVER["HTTP_X_CUSTOM_HEADER"]))
setState("FAIL", $stateFile);
else
setState("PASS", $stateFile);
} else {
if (isset($_SERVER["HTTP_X_CUSTOM_HEADER"]))
echo getState($stateFile);
else
echo "FAIL - no header in actual request";
}
?>