Example #1
0
 /**
  * @return Psc\Net\HTTP\Request
  */
 public function createHTTPRequest($methodString, $resource, $GET = array(), $POST = array(), $COOKIE = array(), $accept = NULL)
 {
     \Psc\Code\Code::value($methodString, 'GET', 'POST');
     $project = \Psc\PSC::getProject();
     $baseUrl = $project->getHostUrl('base');
     $SERVER = array('HTTP_HOST' => $baseUrl->getHost(), 'HTTP_USER_AGENT' => 'Mozilla/5.0 (Windows NT 6.0; rv:7.0.1) Gecko/20100101 Firefox/7.0.1', 'HTTP_ACCEPT' => $accept ?: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_LANGUAGE' => 'en-us,en;q=0.5', 'HTTP_ACCEPT_ENCODING' => 'gzip, deflate', 'HTTP_ACCEPT_CHARSET' => 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_CONNECTION' => 'keep-alive', 'SERVER_NAME' => $baseUrl->getHost(), 'DOCUMENT_ROOT' => (string) $project->dir('www'), 'REDIRECT_QUERY_STRING' => 'request=' . $resource, 'REDIRECT_URL' => $resource, 'GATEWAY_INTERFACE' => 'CGI/1.1', 'SERVER_PROTOCOL' => 'HTTP/1.1', 'REQUEST_METHOD' => $methodString, 'QUERY_STRING' => 'request=' . $resource, 'REQUEST_URI' => $resource, 'SCRIPT_NAME' => '/api.php', 'PHP_SELF' => '/api.php', 'REQUEST_TIME' => time());
     //$request = create($uri, $method = 'GET', $parameters = array(), $cookies = array(), $files = array(), $server = array(), $content = null)
     $request = SfRequest::create((string) $baseUrl . '/' . ltrim($resource, '/'), $methodString, $methodString === 'POST' ? $POST : $GET, $COOKIE, array(), $SERVER);
     $request = Request::infer($request);
     return $request;
 }
Example #2
0
 public function initRequest(Request $request = NULL)
 {
     $this->request = $request ?: Request::infer();
     // infer() von $_GET usw ...
     $con = $this->request->getHeaderField('X-Psc-Cms-Connection');
     if (!empty($con)) {
         $this->setConnectionName($con);
     }
     if ($this->request->hasHeaderField('X-Psc-Cms-Debug-Level')) {
         $this->setDebugLevel((int) $this->request->getHeaderField('X-Psc-Cms-Debug-Level'));
     }
     // so rum überschreiben wir den X-Psc-Cms-Connection Header (was ja safe ist)
     if ($this->isTesting()) {
         $this->setConnectionName('tests');
     }
 }
Example #3
0
 public function init(Request $request = NULL)
 {
     $this->request = $request ?: Request::infer();
     return $this;
 }
Example #4
0
<?php

try {
    /**
     * Ein Script was den Request aus den Globals Inferred und serialisiert ausgibt
     */
    $request = \Psc\Net\HTTP\Request::infer();
    print serialize($request);
} catch (\Exception $e) {
    $message = $e->getMessage() . ' ' . $e->getFile() . ':' . $e->getLine();
    $message = str_replace(array("\n", "\"r"), ' ', $message);
    $response = \Psc\Net\HTTP\Response::create(500, (string) $e, array('X-Psc-CMS-Error' => 'true', 'X-Psc-CMS-Error-Message' => $message));
    $response->output();
}