Scalr::getAllHeaders PHP Method

getAllHeaders() public static method

Get all http headers in camel-case form
public static getAllHeaders ( ) : array
return array
    public static function getAllHeaders()
    {
        $headers = [];
        foreach ($_SERVER as $header => $value) {
            if (($http = strpos($header, "HTTP_") === 0) || strpos($header, "CONTENT_") === 0) {
                $headers[str_replace(' ', '-', ucwords(str_replace('_', ' ', strtolower($http === true ? substr($header, 5) : $header))))] = $value;
            }
        }
        return $headers;
    }

Usage Example

Esempio n. 1
0
File: api.php Progetto: mheydt/scalr
    $envId = (int) $_SERVER['HTTP_X_SCALR_ENV_ID'];
    $pathChunks = explode('/', $path);
    $version = array_shift($pathChunks);
    $path = '/' . $path;
    $user = Scalr_Account_User::init();
    $user->loadByApiAccessKey($keyId);
    if (!$user->getSetting(Scalr_Account_User::SETTING_API_ENABLED)) {
        throw new Exception("API disabled for this account");
    }
    //Check IP whitelist
    $postData = isset($_POST['rawPostData']) ? $_POST['rawPostData'] : '';
    $secretKey = $user->getSetting(Scalr_Account_User::SETTING_API_SECRET_KEY);
    $stringToSign = "{$path}:{$keyId}:{$envId}:{$postData}:{$secretKey}";
    $validToken = CryptoTool::hash($stringToSign);
    if ($validToken != $token) {
        throw new Exception("Invalid authentification token");
    }
    // prepate input data
    $postDataConvert = array();
    foreach (json_decode($postData, true) as $key => $value) {
        $postDataConvert[str_replace('.', '_', $key)] = $value;
    }
    $request = Scalr_UI_Request::initializeInstance(Scalr_UI_Request::REQUEST_TYPE_API, Scalr::getAllHeaders(), $_SERVER, $postDataConvert, $_FILES, $user->id, $envId);
    $request->requestApiVersion = intval(trim($version, 'v'));
    SettingEntity::increase('internalapi.' . join('.', $pathChunks));
    Scalr_Api_Controller::handleRequest($pathChunks);
    Scalr_UI_Response::getInstance()->sendResponse();
} catch (Exception $e) {
    Scalr_UI_Response::getInstance()->failure($e->getMessage());
    Scalr_UI_Response::getInstance()->sendResponse();
}
All Usage Examples Of Scalr::getAllHeaders