Skip to content

Commit c3dcc79

Browse files
committed
docs: animated gif
1 parent 28db427 commit c3dcc79

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

README.md

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
[![GitHub release](https://img.shields.io/github/release/membrane/service-proxy.svg)](https://github.com/membrane/service-proxy/releases/latest)
66
[![Hex.pm](https://img.shields.io/hexpm/l/plug.svg)](https://raw.githubusercontent.com/membrane/api-gateway/master/distribution/router/LICENSE.txt)
77

8-
9-
![API Gateway Demo](docs/images/api-gateway-demo.gif)
8+
<img src="docs/images/api-gateway-demo.gif" alt="Animated demo of Membrane API Gateway" width="720"></img>s
109

1110
Lightweight **API Gateway** for **REST**, **GraphQL** and **legacy SOAP Web Services**, easily extended with powerful plugins and Java.
1211

@@ -340,13 +339,13 @@ The configuration below demonstrates several routing rules:
340339

341340
### Configuration Options
342341

343-
| Option | Description |
344-
|----------|----------------------------------------------------------------------------|
345-
| `port` | port Membrane listens for incoming connections. |
346-
| `method` | - HTTP method (e.g., `GET`, `POST`, `DELETE`).<br>- `*` matchs any method. |
347-
| `host` | - Hostname e.g. `api.predic8.de`<br> - Supports basic globbing with `*` |
348-
| `test` | - Custum script e.g. `$pathParm.id == '42'`, `$header.contentType == '...'` |
349-
| `path` | - Request path<br>- Regular expressions can be used with `isRegExp="true"` |
342+
| Option | Description |
343+
|----------|-------------------------------------------------------------------------------|
344+
| `port` | port Membrane listens for incoming connections. |
345+
| `method` | - HTTP method (e.g., `GET`, `POST`, `DELETE`).<br>- `*` matches any method. |
346+
| `host` | - Hostname e.g. `api.predic8.de`<br> - Supports basic globbing with `*` |
347+
| `test` | - Custum script e.g. `$pathParam.id == '42'`, `$header.contentType == '...'` |
348+
| `path` | - Request path<br>- Regular expressions can be used with `isRegExp="true"` |
350349

351350
For more routing options, see the [Membrane API documentation](https://www.membrane-api.io/docs/current/api.html).
352351

@@ -361,7 +360,7 @@ The following configuration creates a health check endpoint that responds to req
361360
<api port="2000">
362361
<path>/health</path>
363362
<response>
364-
<static>I'am fine.</static>
363+
<static>I'm good.</static>
365364
</response>
366365
<return statusCode="200"/>
367366
</api>
@@ -434,7 +433,7 @@ The following API executes a Groovy script during the request and the response.
434433
```xml
435434
<api port="2000">
436435
<groovy>
437-
println "I'am executed in the ${flow} flow"
436+
println "I'm executed in the ${flow} flow"
438437
println "HTTP Headers:\n${header}"
439438
</groovy>
440439
<target url="https://api.predic8.de"/>
@@ -444,13 +443,13 @@ The following API executes a Groovy script during the request and the response.
444443
After invoking [http://localhost:2000](http://localhost:2000) you can see the following output in the console where you have started Membrane:
445444
446445
```text
447-
I'am executed in the REQUEST flow
446+
I'm executed in the REQUEST flow
448447
HTTP Headers:
449448
Host: localhost:2000
450449
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:133.0) Gecko/20100101 Firefox/133.0
451450
...
452451
453-
I'am executed in the RESPONSE flow
452+
I'm executed in the RESPONSE flow
454453
HTTP Headers:
455454
Content-Length: 390
456455
Content-Type: application/json
@@ -693,7 +692,7 @@ This template will transform the JSON input into plain text:
693692
694693
### Transform XML into Text or JSON
695694
696-
Using `setProperty` you can extract values from XML request or response bodies and store it in properties. Then the properties are available as variables inside `template`.
695+
Using `setProperty` you can extract values from XML request or response bodies and store it in properties. Then the properties are available as variables inside the `template` plugin.
697696
plugin.
698697
699698
```xml
@@ -1014,7 +1013,7 @@ The `jsonProtection` plugin safeguards APIs from JSON-based vulnerabilities by s
10141013
10151014
- **Depth**: Prevents overly nested JSON structures.
10161015
- **Key Length**: Restricts excessively long keys.
1017-
- **Object Size**: Maximum number of fields in aJSON object.
1016+
- **Object Size**: Maximum number of fields in a JSON object.
10181017
- **String Length**: Controls maximum length of string values.
10191018
- **...**
10201019

0 commit comments

Comments
 (0)