Example #1
0
 /**
  * 分发请求
  * 
  * @param  \Ws\Mvc\Request $request
  * 
  * @return mixed
  */
 public static function dispatch(Request $request = null)
 {
     if (null == $request) {
         $accessor = trim(self::$config->get('cmd.accessor', '_ws'));
         if (!empty($accessor) && strlen($accessor) < 16 && isset($_GET[$accessor])) {
             $request = new Request($_GET[$accessor]);
         } else {
             $request = new Request(Request::get_request_pathinfo());
         }
     }
     $app = self::parseMointpoints($request);
     if (!empty($app)) {
         return $app->run();
     }
     throw new Exception("cannot parse path: " . $request->pathinfo());
 }