Skip to content

Commit a541525

Browse files
Fennygitbook-bot
authored andcommitted
GitBook: [master] one page modified
1 parent c2a77e8 commit a541525

File tree

1 file changed

+74
-11
lines changed

1 file changed

+74
-11
lines changed

middleware.md

Lines changed: 74 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -119,17 +119,80 @@ middleware.Limiter(config ...LimiterConfig) func(*Ctx)
119119

120120
**Config**
121121

122-
| Property | Type | Description | Default |
123-
| :--- | :--- | :--- | :--- |
124-
| Skip | `func(*Ctx) bool` | Defines a function to skip middleware | `nil` |
125-
| Timeout | `int` | Users defines the allowed credentials | `60` |
126-
| Max | `int` | Users defines the allowed credentials | `10` |
127-
| Message | `string` | Users defines the allowed credentials | `"Too many requests, please try again later."` |
128-
| StatusCode | `int` | Users defines the allowed credentials | `429` |
129-
| Key | `func(*Ctx) string` | Users defines the allowed credentials | `return c.IP()` |
130-
| Handler | `func(*Ctx)` | Realm is a string to define the realm attribute | `c.Status(StatusCode).SendString(Message)` |
131-
132-
**Example**
122+
<table>
123+
<thead>
124+
<tr>
125+
<th style="text-align:left">Property</th>
126+
<th style="text-align:left">Type</th>
127+
<th style="text-align:left">Description</th>
128+
<th style="text-align:left">Default</th>
129+
</tr>
130+
</thead>
131+
<tbody>
132+
<tr>
133+
<td style="text-align:left">Skip</td>
134+
<td style="text-align:left"><code>func(*Ctx) bool</code>
135+
</td>
136+
<td style="text-align:left">Defines a function to skip middleware</td>
137+
<td style="text-align:left"><code>nil</code>
138+
</td>
139+
</tr>
140+
<tr>
141+
<td style="text-align:left">Timeout</td>
142+
<td style="text-align:left"><code>int</code>
143+
</td>
144+
<td style="text-align:left">Timeout in seconds on how long to keep records of requests in memory</td>
145+
<td
146+
style="text-align:left"><code>60</code>
147+
</td>
148+
</tr>
149+
<tr>
150+
<td style="text-align:left">Max</td>
151+
<td style="text-align:left"><code>int</code>
152+
</td>
153+
<td style="text-align:left">Max number of recent connections during <code>Timeout</code> seconds before
154+
sending a 429 response</td>
155+
<td style="text-align:left"><code>10</code>
156+
</td>
157+
</tr>
158+
<tr>
159+
<td style="text-align:left">Message</td>
160+
<td style="text-align:left"><code>string</code>
161+
</td>
162+
<td style="text-align:left">Response body</td>
163+
<td style="text-align:left"><code>&quot;Too many requests, please try again later.&quot;</code>
164+
</td>
165+
</tr>
166+
<tr>
167+
<td style="text-align:left">StatusCode</td>
168+
<td style="text-align:left"><code>int</code>
169+
</td>
170+
<td style="text-align:left">Response status code</td>
171+
<td style="text-align:left"><code>429</code>
172+
</td>
173+
</tr>
174+
<tr>
175+
<td style="text-align:left">Key</td>
176+
<td style="text-align:left"><code>func(*Ctx) string</code>
177+
</td>
178+
<td style="text-align:left">Key allows to use a custom handler to create custom keys</td>
179+
<td style="text-align:left"><code>func(c *fiber.Ctx) string { <br /> return c.IP() <br />}</code>
180+
</td>
181+
</tr>
182+
<tr>
183+
<td style="text-align:left">Handler</td>
184+
<td style="text-align:left"><code>func(*Ctx)</code>
185+
</td>
186+
<td style="text-align:left">Handler is called when a request hits the limit</td>
187+
<td style="text-align:left">
188+
<p><code>func(c *fiber.Ctx) {</code>
189+
</p>
190+
<p><code> c.Status(cfg.StatusCode).SendString(cfg.Message) }</code>
191+
</p>
192+
</td>
193+
</tr>
194+
</tbody>
195+
</table>**Example**
133196

134197
```go
135198
package main

0 commit comments

Comments
 (0)