Adds a diagram and short how it works.
This commit is contained in:
BIN
docs/src/main/asciidoc/images/gateway_diagram.png
Normal file
BIN
docs/src/main/asciidoc/images/gateway_diagram.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 19 KiB |
@@ -1,10 +1,11 @@
|
||||
:github-tag: master
|
||||
:github-repo: spring-cloud-incubator/spring-cloud-gateway
|
||||
:github-raw: http://raw.github.com/{github-repo}/{github-tag}
|
||||
:github-code: http://github.com/{github-repo}/tree/{github-tag}
|
||||
:github-raw: https://raw.githubusercontent.com/{github-repo}/{github-tag}
|
||||
:github-code: https://github.com/{github-repo}/tree/{github-tag}
|
||||
:all: {asterisk}{asterisk}
|
||||
:nofooter:
|
||||
:imagesdir: ./images
|
||||
:imagesurl: {github-raw}/docs/src/main/asciidoc/images
|
||||
= Spring Cloud Gateway
|
||||
|
||||
*{spring-cloud-version}*
|
||||
@@ -22,14 +23,16 @@ If you include the starter, but, for some reason, you do not want the gateway to
|
||||
|
||||
== Glossary
|
||||
|
||||
* Route: Route the basic building block of the gateway. It is defined by an ID, a destination URI, a collection of predicates and a collection of filters. A route is matched if aggregate predicate is true.
|
||||
* Predicate: This is a http://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html[Java 8 Function Predicate]. The input type is a http://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/ServerWebExchange.html[Spring Framework `ServerWebExchange`]. This allows developers to match on anything from the HTTP request, such as headers or parameters.
|
||||
* Filter: These are instances http://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/WebFilter.html[Spring Framework `WebFilter`] constructed in with a specific factory. Here, requests and responses can be modified before or after sending the downstream request.
|
||||
* *Route*: Route the basic building block of the gateway. It is defined by an ID, a destination URI, a collection of predicates and a collection of filters. A route is matched if aggregate predicate is true.
|
||||
* *Predicate*: This is a http://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html[Java 8 Function Predicate]. The input type is a http://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/ServerWebExchange.html[Spring Framework `ServerWebExchange`]. This allows developers to match on anything from the HTTP request, such as headers or parameters.
|
||||
* *Filter*: These are instances http://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/WebFilter.html[Spring Framework `WebFilter`] constructed in with a specific factory. Here, requests and responses can be modified before or after sending the downstream request.
|
||||
|
||||
[[gateway-how-it-works]]
|
||||
== How It Works
|
||||
|
||||
TODO: give an overview of how the gateway works with maybe a ascii diagram
|
||||
image::{imagesurl}/gateway_diagram.png[Spring Cloud Gateway Diagram]
|
||||
|
||||
Clients make requests to Spring Cloud Gateway. If the Gateway Handler Mapping determines that a request matches a Route, it is sent to the Gateway Web Handler. This handler runs sends the request through a filter chain that is specific to the request. The reason the filters are divided by the dotted line, is that filters may execute logic before the proxy request is sent or after. All "pre" filter logic is executed, then the proxy request is made. After the proxy request is made, the "post" filter logic is executed.
|
||||
|
||||
[[gateway-request-predicates-factories]]
|
||||
== Route Predicate Factories
|
||||
|
||||
Reference in New Issue
Block a user