Explorar o código

feat(hooks): 添加HTTP请求结束钩子支持

- 新增HttpEndHook类用于监听HTTP请求结束事件
- 在Extension类中注册HttpEndHook钩子
- 引入HttpEndHook命名空间到Extension类
- 实现getHooks方法返回已注册的钩子列表
runphp hai 3 meses
pai
achega
c7614213a9
Modificáronse 2 ficheiros con 24 adicións e 0 borrados
  1. 9 0
      src/Extension.php
  2. 15 0
      src/Hook/HttpEndHook.php

+ 9 - 0
src/Extension.php

@@ -4,6 +4,7 @@ declare(strict_types=1);
 namespace SixShop\Hello;
 
 use SixShop\Core\ExtensionAbstract;
+use SixShop\Hello\Hook\HttpEndHook;
 
 class Extension extends ExtensionAbstract
 {
@@ -12,4 +13,12 @@ class Extension extends ExtensionAbstract
     {
         return dirname(__DIR__);
     }
+
+    #[\Override]
+    public function getHooks(): array
+    {
+        return [
+            HttpEndHook::class
+        ];
+    }
 }

+ 15 - 0
src/Hook/HttpEndHook.php

@@ -0,0 +1,15 @@
+<?php
+declare(strict_types=1);
+namespace SixShop\Hello\Hook;
+
+use SixShop\Core\Attribute\Hook;
+use think\event\HttpEnd;
+use think\Response;
+
+#[Hook(HttpEnd::class)]
+class HttpEndHook
+{
+    public function handle(Response $response)
+    {
+    }
+}