Example #1
0
 public function onRequest($request, $response)
 {
     $filename = ZPHP::getRootPath() . DS . 'webroot' . $request->server['path_info'];
     if (is_file($filename)) {
         //解析静态文件
         $response->header("Content-Type", $this->getMime($filename) . '; charset=utf-8');
         $response->end(file_get_contents($filename));
         return;
     }
     $param = [];
     if (!empty($request->get)) {
         $param = $request->get;
     }
     if (!empty($request->post)) {
         $param += $request->post;
     }
     $_SERVER['HTTP_USER_AGENT'] = $request->header['user-agent'];
     Request::parse($param);
     Request::setViewMode('Php');
     Request::setHttpServer(1);
     Response::setResponse($response);
     try {
         $result = ZRoute::route();
     } catch (\Exception $e) {
         $model = Formater::exception($e);
         $model['_view_mode'] = 'Json';
         $result = Response::display($model);
     }
     $response->end($result);
     Request::setViewMode(ZConfig::getField('project', 'view_mode', 'Json'));
     Request::setHttpServer(0);
 }
Example #2
0
File: Cli.php Project: heesey/zphp
 public function run()
 {
     $server = Protocol\Factory::getInstance('Cli');
     Protocol\Request::setServer($server);
     Protocol\Request::parse($_SERVER['argv']);
     return Core\Route::route();
 }
Example #3
0
 public function onReceive()
 {
     list($serv, $fd, $fromId, $data) = func_get_args();
     if (empty($data)) {
         return;
     }
     Request::parse($data);
     $result = ZRoute::route();
     $serv->send($fd, $result);
 }
Example #4
0
 public function onTask($server, $taskId, $fromId, $data)
 {
     Request::parse($data);
     Request::addParams('taskId', $taskId . '_' . $fromId);
     try {
         ZRoute::route();
     } catch (\Exception $e) {
         $model = Formater::exception($e);
         ZLog::info('exception', $model);
     }
 }
Example #5
0
 public function onMessage($server, $frame)
 {
     if (empty($frame->finish)) {
         //数据未完
         if (empty($this->buff[$frame->fd])) {
             $this->buff[$frame->fd] = $frame->data;
         } else {
             $this->buff[$frame->fd] .= $frame->data;
         }
     } else {
         if (!empty($this->buff[$frame->fd])) {
             $frame->data = $this->buff[$frame->fd] . $frame->data;
             unset($this->buff[$frame->fd]);
         }
     }
     Request::parse($frame->data);
     $result = ZRoute::route();
     $server->push($frame->fd, $result);
 }
Example #6
0
 public function onRequest($request, $response)
 {
     $param = [];
     if (!empty($request->get)) {
         $param = $request->get;
     }
     if (!empty($request->post)) {
         $param += $request->post;
     }
     Request::parse($param);
     try {
         $result = ZRoute::route();
     } catch (\Exception $e) {
         $model = Formater::exception($e);
         $model['_view_mode'] = 'Json';
         $result = Response::display($model);
     }
     $response->end($result);
 }
Example #7
0
 public function onRequest($request, $reponse)
 {
     $content = "";
     do {
         $path_info = explode("/", $request->server['path_info']);
         $ctrl = $path_info[1];
         $method = $path_info[2];
         if (isset($request->post)) {
             Protocol\Request::parse($request->post);
         } else {
             Protocol\Request::parse($request->rawContent());
         }
         Protocol\Request::setCtrl($ctrl);
         Protocol\Request::setMethod($method);
         Protocol\Request::setViewMode('Json');
         Protocol\Request::setSocket($this->serv);
         //\ob_start();
         $content = Core\Route::route();
         //$content = \ob_get_contents();
         //\ob_end_clean();
     } while (0);
     $reponse->end($content);
 }
Example #8
0
 public function api($params)
 {
     Protocol\Request::setServer(Protocol\Factory::getInstance('Rpc'));
     Protocol\Request::parse($params);
     return Core\Route::route();
 }
Example #9
0
File: Http.php Project: heesey/zphp
 public function run()
 {
     Protocol\Request::setServer(Protocol\Factory::getInstance('Http'));
     Protocol\Request::parse($_REQUEST);
     return Core\Route::route();
 }
Example #10
0
 public function onClose()
 {
     Request::setFd(func_get_arg(1));
     Request::parse(['a' => 'chat', 'm' => 'offline']);
     ZRoute::route();
 }