Skip to content

Commit

Permalink
docs: update documents
Browse files Browse the repository at this point in the history
  • Loading branch information
vicanso committed Dec 2, 2021
1 parent 48cfead commit 7c9c1ca
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 5 deletions.
6 changes: 3 additions & 3 deletions docs/context.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,11 @@ HTTP响应数据,此属性为interface{},因此可以设置不同的数据

## BodyBuffer

HTTP的响应数据(字节),此数据为真正返回的响应体,大部分应用场景使用responder中间件将Body转换为字节赋值(BodyBuffer),并写入相应的`Content-Type`则可,少量应用场景需要可以直接将响应数据赋值而不通过中间件处理。
HTTP的响应数据(字节),此数据为真正返回的响应体,大部分应用场景使用responder中间件将Body转换为字节(BodyBuffer),并写入相应的`Content-Type`则可,少量应用场景需要可以直接将响应数据赋值而不通过中间件处理。

## RequestBody

HTTP请求体,对于`POST``PUT`以及`PATCH`提交数据的请求,此字段用于保存请求体。注意:默认Elton中并未从请求中读取相应的请求体,需要使用`body_parser`中间件来获取或者自定义相应的中间件。
HTTP请求体,对于`POST``PUT`以及`PATCH`提交数据的请求,此字段用于保存请求体。注意:默认Elton并未从请求中读取相应的请求体,需要使用`body_parser`中间件来获取或者自定义相应的中间件。

## RemoteAddr

Expand Down Expand Up @@ -82,7 +82,7 @@ func main() {

## RealIP

获取客户端的真实IP,先判断请求头是否有`X-Forwarded-For`,如果没有再取`X-Real-Ip`,都没有则从连接IP中取。
获取客户端的真实IP,先判断请求头是否有`X-Forwarded-For`,如果没有再取`X-Real-IP`,都没有则从连接IP中取。

**Example**
```go
Expand Down
10 changes: 8 additions & 2 deletions docs/middlewares.md
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,12 @@ func main() {

缓存中间件,对于`GET``HEAD`的请求,根据其`Cache-Control`判断是否可缓存,若可缓存则将数据缓存至store中,下次相同的请求直接从缓存中读取。缓存数据可指定数据压缩后缓存,并响应时根据客户端自动返回压缩或未压缩数据。需要注意当前基本所有浏览器均支持br压缩,但是浏览器只在https模式下才会设置支持br,因此服务仅运行在http上,则建议使用gzip压缩。

- 请求的缓存key默认为`Method` + `RequestURI`
- `fetch`状态则表示无缓存时的请求,获取响应数据后判断是否可缓存,如果可缓存则设置缓存数据(状态:hit,数据:响应头及响应数据),不可缓存则设置缓存数据(状态:hit-for-pass,数据:空)
- `hit-for-pass`状态表示该请求有相应缓存,但该缓存表示该请求不可读取缓存
- `hit`状态表示该请求有相应缓存,则缓存数据可用,直接使用缓存返回客户端
- 如果有设置压缩,缓存数据若符合压缩条件则压缩后缓存,若不符合,则缓存原始数据。响应时需要客户端是否可接受压缩数据,若可以则直接返回压缩数据,若不可以则解压后返回


**Example**
```go
Expand Down Expand Up @@ -178,7 +184,7 @@ func main() {

## compress

响应数据压缩中间件,可对特定数据类型、数据长度的响应数据做压缩处理。默认支持`gzip`压缩,可扩展更多的压缩方式,如:brotli,zstd等。
响应数据压缩中间件,可对特定数据类型、数据长度的响应数据做压缩处理。默认支持`gzip``brotli`压缩,可扩展更多的压缩方式,如:lz4,zstd等。

### Compressor

Expand Down Expand Up @@ -328,7 +334,7 @@ func main() {

## error handler

出错转换处理,用于将出错转换为json或text出错响应,建议在controller中对处理出错的自定义出错类型,使用出错中间件将相应的出错信息转换输出。
出错转换处理,用于将出错转换为json或text出错响应,建议在业务逻辑中使用自定义的出错类型,使用出错中间件将相应的出错信息转换输出,可方便的汇总统计非自定义的出错类型,便于系统的优化

**Example**
```go
Expand Down

0 comments on commit 7c9c1ca

Please sign in to comment.