收到请求事件

  1. protected function onRequest($actionName): ?bool

当EasySwoole收到任何的HTTP请求时,均会执行该事件。该事件可以对HTTP请求全局拦截。

  1. $sec = new Security();
  2. if($sec->check($request->getRequestParam())){
  3. $response->write("do not attack");
  4. return false;
  5. }
  6. if($sec->check($request->getCookieParams())){
  7. $response->write("do not attack");
  8. return false;
  9. }

或者是

  1. $cookie = $request->getCookieParams('who');
  2. //do cookie auth
  3. if(auth fail){
  4. $this->response()->autoEnd(true);
  5. return false;
  6. }

若在改事件中,执行 $response->end(),则该次请求不会进入路由匹配阶段。