From 6c7b14ffcccbcb14fc0cfc3c303d0a88cc25edfd Mon Sep 17 00:00:00 2001 From: buildmaster Date: Tue, 14 Feb 2017 19:44:48 +0000 Subject: [PATCH] Sync docs from master to gh-pages --- spring-cloud-netflix.html | 51 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/spring-cloud-netflix.html b/spring-cloud-netflix.html index 43edefd35..d500d0770 100644 --- a/spring-cloud-netflix.html +++ b/spring-cloud-netflix.html @@ -2788,6 +2788,57 @@ as a fallback. Here is a very simple ZuulFallbackProvider implemen customers: /customers/** +
+

If you would like to provide a default fallback for all routes than you can create a bean of +type ZuulFallbackProvider and have the getRoute method return * or null.

+
+
+
+
class MyFallbackProvider implements ZuulFallbackProvider {
+    @Override
+    public String getRoute() {
+        return "*";
+    }
+
+    @Override
+    public ClientHttpResponse fallbackResponse() {
+        return new ClientHttpResponse() {
+            @Override
+            public HttpStatus getStatusCode() throws IOException {
+                return HttpStatus.OK;
+            }
+
+            @Override
+            public int getRawStatusCode() throws IOException {
+                return 200;
+            }
+
+            @Override
+            public String getStatusText() throws IOException {
+                return "OK";
+            }
+
+            @Override
+            public void close() {
+
+            }
+
+            @Override
+            public InputStream getBody() throws IOException {
+                return new ByteArrayInputStream("fallback".getBytes());
+            }
+
+            @Override
+            public HttpHeaders getHeaders() {
+                HttpHeaders headers = new HttpHeaders();
+                headers.setContentType(MediaType.APPLICATION_JSON);
+                return headers;
+            }
+        };
+    }
+}
+
+

Zuul Developer Guide