mirror of
https://gitee.com/hyperf/hyperf.git
synced 2024-12-02 19:58:22 +08:00
commit
c8b8d21872
@ -74,7 +74,7 @@ class UserService
|
||||
|
||||
### 清理注解缓存
|
||||
|
||||
当然,如果我们数据库中的数据改变了,如果删除缓存呢?这里就需要用到后面的监听器。下面新建一个 Service 提供一方法,来帮我们处理缓存。
|
||||
当然,如果我们数据库中的数据改变了,如何删除缓存呢?这里就需要用到后面的监听器。下面新建一个 Service 提供一方法,来帮我们处理缓存。
|
||||
|
||||
```php
|
||||
<?php
|
||||
|
@ -1,6 +1,6 @@
|
||||
# 异常处理器
|
||||
|
||||
在 `Hyperf` 里,业务代码都运行在 `Worker进程` 上,也就意味着一旦任意一个请求的业务存在没有捕获处理的异常的话,都会导致对应的 `Worker进程` 被中断退出,虽然被中断的 `Worker进程` 仍会被重新拉起,但对服务而已也是不能接受的,且捕获异常并输出合理的报错内容给客户端也是更加友好的。
|
||||
在 `Hyperf` 里,业务代码都运行在 `Worker进程` 上,也就意味着一旦任意一个请求的业务存在没有捕获处理的异常的话,都会导致对应的 `Worker进程` 被中断退出,虽然被中断的 `Worker进程` 仍会被重新拉起,但对服务而言也是不能接受的,且捕获异常并输出合理的报错内容给客户端也是更加友好的。
|
||||
我们可以通过对各个 `server` 定义不同的 `异常处理器(ExceptionHandler)`,一旦业务流程存在没有捕获的异常,都会被传递到已注册的 `异常处理器(ExceptionHandler)` 去处理。
|
||||
|
||||
## 自定义一个异常处理
|
||||
|
@ -128,7 +128,7 @@ class IndexController
|
||||
## 文件下载
|
||||
|
||||
`Hyperf\HttpServer\Contract\ResponseInterface` 提供了 `download(string $file, string $name = '')` 返回一个已设置下载文件状态的 `Psr7ResponseInterface` 对象。
|
||||
如果请求中带有 `if-match` 或 `if-none-match` 的请求头,Hyperf 也会跟根据协议标准与 `ETag` 进行比较,如果一致则会返回一个 `304` 状态码的响应。
|
||||
如果请求中带有 `if-match` 或 `if-none-match` 的请求头,Hyperf 也会根据协议标准与 `ETag` 进行比较,如果一致则会返回一个 `304` 状态码的响应。
|
||||
|
||||
`download` 方法:
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user