Build book from commit 7b3aa5e631 [skip ci]

This commit is contained in:
Automatic build 2018-08-22 18:52:18 +00:00
parent 71fe45bbf2
commit 40beb81f56
44 changed files with 929 additions and 375 deletions

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -1086,7 +1099,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Composing Routers","level":"1.4.2","depth":2,"next":{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},"previous":{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/composing_routers.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Composing Routers","level":"1.4.2","depth":2,"next":{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},"previous":{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/composing_routers.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -792,7 +805,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Configuring Routers","level":"1.4.1","depth":2,"next":{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},"previous":{"title":"Advanced","level":"1.4","depth":1,"path":"advanced/README.md","ref":"advanced/README.md","articles":[{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/configuring_routers.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Configuring Routers","level":"1.4.1","depth":2,"next":{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},"previous":{"title":"Advanced","level":"1.4","depth":1,"path":"advanced/README.md","ref":"advanced/README.md","articles":[{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/configuring_routers.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -851,7 +864,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Dev Workflow","level":"1.4.5","depth":2,"next":{"title":"Ring","level":"1.5","depth":1,"path":"ring/README.md","ref":"ring/README.md","articles":[{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},{"title":"Middleware Registry","level":"1.5.7","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},{"title":"Default Middleware","level":"1.5.8","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},{"title":"Pluggable Coercion","level":"1.5.9","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},{"title":"Route Data Validation","level":"1.5.10","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},{"title":"Compiling Middleware","level":"1.5.11","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},{"title":"Swagger Support","level":"1.5.12","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]}]},"previous":{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/dev_workflow.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Dev Workflow","level":"1.4.5","depth":2,"next":{"title":"Ring","level":"1.5","depth":1,"path":"ring/README.md","ref":"ring/README.md","articles":[{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},{"title":"Transformations Middleware Chain","level":"1.5.7","depth":2,"path":"ring/transformating_middleware_chain.md","ref":"ring/transformating_middleware_chain.md","articles":[]},{"title":"Middleware Registry","level":"1.5.8","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},{"title":"Default Middleware","level":"1.5.9","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},{"title":"Pluggable Coercion","level":"1.5.10","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},{"title":"Route Data Validation","level":"1.5.11","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},{"title":"Compiling Middleware","level":"1.5.12","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},{"title":"Swagger Support","level":"1.5.13","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]}]},"previous":{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/dev_workflow.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -795,7 +808,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Different Routers","level":"1.4.3","depth":2,"next":{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},"previous":{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/different_routers.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Different Routers","level":"1.4.3","depth":2,"next":{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},"previous":{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/different_routers.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -747,7 +760,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Advanced","level":"1.4","depth":1,"next":{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},"previous":{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/README.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Advanced","level":"1.4","depth":1,"next":{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},"previous":{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/README.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -887,7 +900,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Route Validation","level":"1.4.4","depth":2,"next":{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]},"previous":{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/route_validation.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Route Validation","level":"1.4.4","depth":2,"next":{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]},"previous":{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"advanced/route_validation.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -750,7 +763,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Basics","level":"1.2","depth":1,"next":{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},"previous":{"title":"Introduction","level":"1.1","depth":1,"path":"README.md","ref":"README.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/README.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Basics","level":"1.2","depth":1,"next":{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},"previous":{"title":"Introduction","level":"1.1","depth":1,"path":"README.md","ref":"README.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/README.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -810,7 +823,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Name-based Routing","level":"1.2.4","depth":2,"next":{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},"previous":{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/name_based_routing.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Name-based Routing","level":"1.2.4","depth":2,"next":{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},"previous":{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/name_based_routing.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -768,7 +781,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Path-based Routing","level":"1.2.3","depth":2,"next":{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},"previous":{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/path_based_routing.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Path-based Routing","level":"1.2.3","depth":2,"next":{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},"previous":{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/path_based_routing.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -811,7 +824,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Route Conflicts","level":"1.2.7","depth":2,"next":{"title":"Coercion","level":"1.3","depth":1,"path":"coercion/README.md","ref":"coercion/README.md","articles":[{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]}]},"previous":{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_conflicts.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Route Conflicts","level":"1.2.7","depth":2,"next":{"title":"Coercion","level":"1.3","depth":1,"path":"coercion/README.md","ref":"coercion/README.md","articles":[{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]}]},"previous":{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_conflicts.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -809,7 +822,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Route Data","level":"1.2.5","depth":2,"next":{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},"previous":{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_data.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Route Data","level":"1.2.5","depth":2,"next":{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},"previous":{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_data.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -861,7 +874,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Route Data Validation","level":"1.2.6","depth":2,"next":{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]},"previous":{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_data_validation.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Route Data Validation","level":"1.2.6","depth":2,"next":{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]},"previous":{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_data_validation.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -795,7 +808,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Route Syntax","level":"1.2.1","depth":2,"next":{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},"previous":{"title":"Basics","level":"1.2","depth":1,"path":"basics/README.md","ref":"basics/README.md","articles":[{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_syntax.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Route Syntax","level":"1.2.1","depth":2,"next":{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},"previous":{"title":"Basics","level":"1.2","depth":1,"path":"basics/README.md","ref":"basics/README.md","articles":[{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/route_syntax.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -778,7 +791,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Router","level":"1.2.2","depth":2,"next":{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},"previous":{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/router.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Router","level":"1.2.2","depth":2,"next":{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},"previous":{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"basics/router.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -780,7 +793,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Clojure.spec","level":"1.3.3","depth":2,"next":{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]},"previous":{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/clojure_spec_coercion.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Clojure.spec","level":"1.3.3","depth":2,"next":{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]},"previous":{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/clojure_spec_coercion.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -875,7 +888,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Coercion Explained","level":"1.3.1","depth":2,"next":{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},"previous":{"title":"Coercion","level":"1.3","depth":1,"path":"coercion/README.md","ref":"coercion/README.md","articles":[{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/coercion.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Coercion Explained","level":"1.3.1","depth":2,"next":{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},"previous":{"title":"Coercion","level":"1.3","depth":1,"path":"coercion/README.md","ref":"coercion/README.md","articles":[{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},{"title":"Plumatic Schema","level":"1.3.2","depth":2,"path":"coercion/schema_coercion.md","ref":"coercion/schema_coercion.md","articles":[]},{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},{"title":"Data-specs","level":"1.3.4","depth":2,"path":"coercion/data_spec_coercion.md","ref":"coercion/data_spec_coercion.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/coercion.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -774,7 +787,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Data-specs","level":"1.3.4","depth":2,"next":{"title":"Advanced","level":"1.4","depth":1,"path":"advanced/README.md","ref":"advanced/README.md","articles":[{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]}]},"previous":{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/data_spec_coercion.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Data-specs","level":"1.3.4","depth":2,"next":{"title":"Advanced","level":"1.4","depth":1,"path":"advanced/README.md","ref":"advanced/README.md","articles":[{"title":"Configuring Routers","level":"1.4.1","depth":2,"path":"advanced/configuring_routers.md","ref":"advanced/configuring_routers.md","articles":[]},{"title":"Composing Routers","level":"1.4.2","depth":2,"path":"advanced/composing_routers.md","ref":"advanced/composing_routers.md","articles":[]},{"title":"Different Routers","level":"1.4.3","depth":2,"path":"advanced/different_routers.md","ref":"advanced/different_routers.md","articles":[]},{"title":"Route Validation","level":"1.4.4","depth":2,"path":"advanced/route_validation.md","ref":"advanced/route_validation.md","articles":[]},{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]}]},"previous":{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/data_spec_coercion.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -747,7 +760,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Coercion","level":"1.3","depth":1,"next":{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},"previous":{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/README.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Coercion","level":"1.3","depth":1,"next":{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},"previous":{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/README.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -775,7 +788,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Plumatic Schema","level":"1.3.2","depth":2,"next":{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},"previous":{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/schema_coercion.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Plumatic Schema","level":"1.3.2","depth":2,"next":{"title":"Clojure.spec","level":"1.3.3","depth":2,"path":"coercion/clojure_spec_coercion.md","ref":"coercion/clojure_spec_coercion.md","articles":[]},"previous":{"title":"Coercion Explained","level":"1.3.1","depth":2,"path":"coercion/coercion.md","ref":"coercion/coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"coercion/schema_coercion.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/middleware_registry.html">
<a href="ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="ring/default_middleware.html">
<a href="ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="ring/coercion.html">
<a href="ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="ring/route_data_validation.html">
<a href="ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="ring/compiling_middleware.html">
<a href="ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="ring/swagger.html">
<a href="ring/swagger.html">
@ -765,7 +778,7 @@ lein <span class="hljs-built_in">test</span>
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Development Instructions","level":"1.9","depth":1,"next":{"title":"FAQ","level":"1.10","depth":1,"path":"faq.md","ref":"faq.md","articles":[]},"previous":{"title":"Interceptors (WIP)","level":"1.8","depth":1,"path":"interceptors.md","ref":"interceptors.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"development.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":".","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Development Instructions","level":"1.9","depth":1,"next":{"title":"FAQ","level":"1.10","depth":1,"path":"faq.md","ref":"faq.md","articles":[]},"previous":{"title":"Interceptors (WIP)","level":"1.8","depth":1,"path":"interceptors.md","ref":"interceptors.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"development.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":".","book":{"language":""}});
});
</script>
</div>

View file

@ -457,7 +457,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/middleware_registry.html">
<a href="ring/middleware_registry.html">
@ -470,7 +483,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="ring/default_middleware.html">
<a href="ring/default_middleware.html">
@ -483,7 +496,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="ring/coercion.html">
<a href="ring/coercion.html">
@ -496,7 +509,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="ring/route_data_validation.html">
<a href="ring/route_data_validation.html">
@ -509,7 +522,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="ring/compiling_middleware.html">
<a href="ring/compiling_middleware.html">
@ -522,7 +535,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="ring/swagger.html">
<a href="ring/swagger.html">
@ -843,7 +856,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"FAQ","level":"1.10","depth":1,"previous":{"title":"Development Instructions","level":"1.9","depth":1,"path":"development.md","ref":"development.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"faq.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":".","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"FAQ","level":"1.10","depth":1,"previous":{"title":"Development Instructions","level":"1.9","depth":1,"path":"development.md","ref":"development.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"faq.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":".","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -742,7 +755,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Basics","level":"1.6.1","depth":2,"next":{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},"previous":{"title":"Frontend","level":"1.6","depth":1,"path":"frontend/README.md","ref":"frontend/README.md","articles":[{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/basics.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Basics","level":"1.6.1","depth":2,"next":{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},"previous":{"title":"Frontend","level":"1.6","depth":1,"path":"frontend/README.md","ref":"frontend/README.md","articles":[{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/basics.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -742,7 +755,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Browser integration","level":"1.6.2","depth":2,"next":{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]},"previous":{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/browser.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Browser integration","level":"1.6.2","depth":2,"next":{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]},"previous":{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/browser.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -742,7 +755,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Controllers","level":"1.6.3","depth":2,"next":{"title":"Performance","level":"1.7","depth":1,"path":"performance.md","ref":"performance.md","articles":[]},"previous":{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/controllers.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Controllers","level":"1.6.3","depth":2,"next":{"title":"Performance","level":"1.7","depth":1,"path":"performance.md","ref":"performance.md","articles":[]},"previous":{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/controllers.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="../ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="../ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/middleware_registry.html">
<a href="../ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="../ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="../ring/default_middleware.html">
<a href="../ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="../ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="../ring/coercion.html">
<a href="../ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="../ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="../ring/route_data_validation.html">
<a href="../ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="../ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="../ring/compiling_middleware.html">
<a href="../ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="../ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="../ring/swagger.html">
<a href="../ring/swagger.html">
@ -746,7 +759,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Frontend","level":"1.6","depth":1,"next":{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},"previous":{"title":"Swagger Support","level":"1.5.12","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/README.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Frontend","level":"1.6","depth":1,"next":{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},"previous":{"title":"Swagger Support","level":"1.5.13","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"frontend/README.md","mtime":"2018-08-22T18:51:30.948Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 228 KiB

View file

@ -457,7 +457,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/middleware_registry.html">
<a href="ring/middleware_registry.html">
@ -470,7 +483,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="ring/default_middleware.html">
<a href="ring/default_middleware.html">
@ -483,7 +496,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="ring/coercion.html">
<a href="ring/coercion.html">
@ -496,7 +509,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="ring/route_data_validation.html">
<a href="ring/route_data_validation.html">
@ -509,7 +522,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="ring/compiling_middleware.html">
<a href="ring/compiling_middleware.html">
@ -522,7 +535,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="ring/swagger.html">
<a href="ring/swagger.html">
@ -865,7 +878,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Introduction","level":"1.1","depth":1,"next":{"title":"Basics","level":"1.2","depth":1,"path":"basics/README.md","ref":"basics/README.md","articles":[{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"README.md","mtime":"2018-08-22T17:24:29.918Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":".","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Introduction","level":"1.1","depth":1,"next":{"title":"Basics","level":"1.2","depth":1,"path":"basics/README.md","ref":"basics/README.md","articles":[{"title":"Route Syntax","level":"1.2.1","depth":2,"path":"basics/route_syntax.md","ref":"basics/route_syntax.md","articles":[]},{"title":"Router","level":"1.2.2","depth":2,"path":"basics/router.md","ref":"basics/router.md","articles":[]},{"title":"Path-based Routing","level":"1.2.3","depth":2,"path":"basics/path_based_routing.md","ref":"basics/path_based_routing.md","articles":[]},{"title":"Name-based Routing","level":"1.2.4","depth":2,"path":"basics/name_based_routing.md","ref":"basics/name_based_routing.md","articles":[]},{"title":"Route Data","level":"1.2.5","depth":2,"path":"basics/route_data.md","ref":"basics/route_data.md","articles":[]},{"title":"Route Data Validation","level":"1.2.6","depth":2,"path":"basics/route_data_validation.md","ref":"basics/route_data_validation.md","articles":[]},{"title":"Route Conflicts","level":"1.2.7","depth":2,"path":"basics/route_conflicts.md","ref":"basics/route_conflicts.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"README.md","mtime":"2018-08-22T18:51:30.944Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":".","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/middleware_registry.html">
<a href="ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="ring/default_middleware.html">
<a href="ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="ring/coercion.html">
<a href="ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="ring/route_data_validation.html">
<a href="ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="ring/compiling_middleware.html">
<a href="ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="ring/swagger.html">
<a href="ring/swagger.html">
@ -810,7 +823,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Interceptors (WIP)","level":"1.8","depth":1,"next":{"title":"Development Instructions","level":"1.9","depth":1,"path":"development.md","ref":"development.md","articles":[]},"previous":{"title":"Performance","level":"1.7","depth":1,"path":"performance.md","ref":"performance.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"interceptors.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":".","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Interceptors (WIP)","level":"1.8","depth":1,"next":{"title":"Development Instructions","level":"1.9","depth":1,"path":"development.md","ref":"development.md","articles":[]},"previous":{"title":"Performance","level":"1.7","depth":1,"path":"performance.md","ref":"performance.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"interceptors.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":".","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="ring/middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="ring/transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/middleware_registry.html">
<a href="ring/middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="ring/default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="ring/default_middleware.html">
<a href="ring/default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="ring/coercion.html">
<li class="chapter " data-level="1.5.10" data-path="ring/coercion.html">
<a href="ring/coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="ring/route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="ring/route_data_validation.html">
<a href="ring/route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="ring/compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="ring/compiling_middleware.html">
<a href="ring/compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="ring/swagger.html">
<li class="chapter " data-level="1.5.13" data-path="ring/swagger.html">
<a href="ring/swagger.html">
@ -821,7 +834,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Performance","level":"1.7","depth":1,"next":{"title":"Interceptors (WIP)","level":"1.8","depth":1,"path":"interceptors.md","ref":"interceptors.md","articles":[]},"previous":{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"performance.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":".","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Performance","level":"1.7","depth":1,"next":{"title":"Interceptors (WIP)","level":"1.8","depth":1,"path":"interceptors.md","ref":"interceptors.md","articles":[]},"previous":{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"performance.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":".","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter active" data-level="1.5.9" data-path="coercion.html">
<li class="chapter active" data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -876,7 +889,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Pluggable Coercion","level":"1.5.9","depth":2,"next":{"title":"Route Data Validation","level":"1.5.10","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},"previous":{"title":"Default Middleware","level":"1.5.8","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/coercion.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Pluggable Coercion","level":"1.5.10","depth":2,"next":{"title":"Route Data Validation","level":"1.5.11","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},"previous":{"title":"Default Middleware","level":"1.5.9","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/coercion.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter active" data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter active" data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -803,7 +816,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Compiling Middleware","level":"1.5.11","depth":2,"next":{"title":"Swagger Support","level":"1.5.12","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]},"previous":{"title":"Route Data Validation","level":"1.5.10","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/compiling_middleware.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Compiling Middleware","level":"1.5.12","depth":2,"next":{"title":"Swagger Support","level":"1.5.13","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]},"previous":{"title":"Route Data Validation","level":"1.5.11","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/compiling_middleware.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -57,7 +57,7 @@
<link rel="shortcut icon" href="../gitbook/images/favicon.ico" type="image/x-icon">
<link rel="next" href="middleware_registry.html" />
<link rel="next" href="transformating_middleware_chain.md" />
<link rel="prev" href="dynamic_extensions.html" />
@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -779,39 +792,8 @@
</code></pre>
<h2 id="compiling-middleware">Compiling middleware</h2>
<p>Middleware can be optimized against an endpoint using <a href="compiling_middleware.html">middleware compilation</a>.</p>
<h2 id="transforming-the-middleware-chain">Transforming the middleware chain</h2>
<p>There is an extra option in ring-router (actually, in the undelaying middleware-router): <code>:reitit.middleware/transform</code> to transform the middleware chain per endpoint. It sees the vector of compiled middleware and should return a new vector of middleware.</p>
<h4 id="adding-debug-middleware-between-all-other-middleware">Adding debug middleware between all other middleware</h4>
<pre><code class="lang-clj">(<span class="hljs-name"><span class="hljs-builtin-name">def</span></span> app
(<span class="hljs-name">ring/ring-handler</span>
(<span class="hljs-name">ring/router</span>
[<span class="hljs-string">&quot;/api&quot;</span> {<span class="hljs-symbol">:middleware</span> [[wrap <span class="hljs-number">1</span>] [wrap2 <span class="hljs-number">2</span>]]}
[<span class="hljs-string">&quot;/ping&quot;</span> {<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:middleware</span> [[wrap3 <span class="hljs-number">3</span>]]
<span class="hljs-symbol">:handler</span> handler}}]]
{<span class="hljs-symbol">::middleware/transform</span> #(<span class="hljs-name">interleave</span> % (<span class="hljs-name"><span class="hljs-builtin-name">repeat</span></span> [wrap <span class="hljs-symbol">:debug</span>]))})))
</code></pre>
<pre><code class="lang-clj">(<span class="hljs-name">app</span> {<span class="hljs-symbol">:request-method</span> <span class="hljs-symbol">:get</span>, <span class="hljs-symbol">:uri</span> <span class="hljs-string">&quot;/api/ping&quot;</span>})
<span class="hljs-comment">; {:status 200, :body [1 :debug 2 :debug 3 :debug :handler]}</span>
</code></pre>
<h4 id="reversing-the-middleware-chain">Reversing the middleware chain</h4>
<pre><code class="lang-clj">(<span class="hljs-name"><span class="hljs-builtin-name">def</span></span> app
(<span class="hljs-name">ring/ring-handler</span>
(<span class="hljs-name">ring/router</span>
[<span class="hljs-string">&quot;/api&quot;</span> {<span class="hljs-symbol">:middleware</span> [[wrap <span class="hljs-number">1</span>] [wrap2 <span class="hljs-number">2</span>]]}
[<span class="hljs-string">&quot;/ping&quot;</span> {<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:middleware</span> [[wrap3 <span class="hljs-number">3</span>]]
<span class="hljs-symbol">:handler</span> handler}}]]
{<span class="hljs-symbol">::middleware/transform</span> reverse)})))
</code></pre>
<pre><code class="lang-clj">(<span class="hljs-name">app</span> {<span class="hljs-symbol">:request-method</span> <span class="hljs-symbol">:get</span>, <span class="hljs-symbol">:uri</span> <span class="hljs-string">&quot;/api/ping&quot;</span>})
<span class="hljs-comment">; {:status 200, :body [3 2 1 :handler]}</span>
</code></pre>
<h2 id="ideas-for-the-future">Ideas for the future</h2>
<ul>
<li>Re-package all useful middleware into (optimized) data-driven Middleware<ul>
<li>just package or a new community-repo with rehosting stuff?</li>
</ul>
</li>
<li>Support <code>Keyword</code> expansion into Middleware, enabling external Middleware Registries (duct/integrant/macchiato -style)</li>
<li>Support Middleware dependency resolution with new keys <code>:requires</code> and <code>:provides</code>. Values are set of top-level keys of the request. e.g.<ul>
<li><code>InjectUserIntoRequestMiddleware</code> requires <code>#{:session}</code> and provides <code>#{:user}</code></li>
<li><code>AuthorizationMiddleware</code> requires <code>#{:user}</code></li>
@ -851,7 +833,7 @@
</a>
<a href="middleware_registry.html" class="navigation navigation-next " aria-label="Next page: Middleware Registry">
<a href="transformating_middleware_chain.md" class="navigation navigation-next " aria-label="Next page: Transformations Middleware Chain">
<i class="fa fa-angle-right"></i>
</a>
@ -862,7 +844,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"next":{"title":"Middleware Registry","level":"1.5.7","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},"previous":{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/data_driven_middleware.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"next":{"title":"Transformations Middleware Chain","level":"1.5.7","depth":2,"path":"ring/transformating_middleware_chain.md","ref":"ring/transformating_middleware_chain.md","articles":[]},"previous":{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/data_driven_middleware.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -809,7 +822,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Default handler","level":"1.5.3","depth":2,"next":{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},"previous":{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/default_handler.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Default handler","level":"1.5.3","depth":2,"next":{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},"previous":{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/default_handler.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter active" data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter active" data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -954,7 +967,7 @@ Server: Jetty(9.2.21.v20170120)
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Default Middleware","level":"1.5.8","depth":2,"next":{"title":"Pluggable Coercion","level":"1.5.9","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},"previous":{"title":"Middleware Registry","level":"1.5.7","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/default_middleware.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Default Middleware","level":"1.5.9","depth":2,"next":{"title":"Pluggable Coercion","level":"1.5.10","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},"previous":{"title":"Middleware Registry","level":"1.5.8","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/default_middleware.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -778,7 +791,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"next":{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},"previous":{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/dynamic_extensions.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"next":{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},"previous":{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/dynamic_extensions.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -705,6 +718,7 @@
<li><a href="static.html">Static Resources</a></li>
<li><a href="dynamic_extensions.html">Dynamic Extensions</a></li>
<li><a href="data_driven_middleware.html">Data-driven Middleware</a></li>
<li><a href="transformating_middleware_chain.md">Transformations Middleware Chain</a></li>
<li><a href="middleware_registry.html">Middleware Registry</a></li>
<li><a href="default_middleware.html">Default Middleware</a></li>
<li><a href="coercion.html">Pluggable Coercion</a></li>
@ -755,7 +769,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Ring","level":"1.5","depth":1,"next":{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},"previous":{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/README.md","mtime":"2018-08-22T17:24:29.922Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Ring","level":"1.5","depth":1,"next":{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},"previous":{"title":"Dev Workflow","level":"1.4.5","depth":2,"path":"advanced/dev_workflow.md","ref":"advanced/dev_workflow.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/README.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -60,7 +60,7 @@
<link rel="next" href="default_middleware.html" />
<link rel="prev" href="data_driven_middleware.html" />
<link rel="prev" href="transformating_middleware_chain.md" />
</head>
@ -459,7 +459,20 @@
</li>
<li class="chapter active" data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter active" data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -773,7 +786,7 @@
<a href="data_driven_middleware.html" class="navigation navigation-prev " aria-label="Previous page: Data-driven Middleware">
<a href="transformating_middleware_chain.md" class="navigation navigation-prev " aria-label="Previous page: Transformations Middleware Chain">
<i class="fa fa-angle-left"></i>
</a>
@ -789,7 +802,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Middleware Registry","level":"1.5.7","depth":2,"next":{"title":"Default Middleware","level":"1.5.8","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},"previous":{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/middleware_registry.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Middleware Registry","level":"1.5.8","depth":2,"next":{"title":"Default Middleware","level":"1.5.9","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},"previous":{"title":"Transformations Middleware Chain","level":"1.5.7","depth":2,"path":"ring/transformating_middleware_chain.md","ref":"ring/transformating_middleware_chain.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/middleware_registry.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -774,7 +787,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Reverse-routing","level":"1.5.2","depth":2,"next":{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},"previous":{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/reverse_routing.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Reverse-routing","level":"1.5.2","depth":2,"next":{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},"previous":{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/reverse_routing.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -834,7 +847,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Ring-router","level":"1.5.1","depth":2,"next":{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},"previous":{"title":"Ring","level":"1.5","depth":1,"path":"ring/README.md","ref":"ring/README.md","articles":[{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},{"title":"Middleware Registry","level":"1.5.7","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},{"title":"Default Middleware","level":"1.5.8","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},{"title":"Pluggable Coercion","level":"1.5.9","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},{"title":"Route Data Validation","level":"1.5.10","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},{"title":"Compiling Middleware","level":"1.5.11","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},{"title":"Swagger Support","level":"1.5.12","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/ring.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Ring-router","level":"1.5.1","depth":2,"next":{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},"previous":{"title":"Ring","level":"1.5","depth":1,"path":"ring/README.md","ref":"ring/README.md","articles":[{"title":"Ring-router","level":"1.5.1","depth":2,"path":"ring/ring.md","ref":"ring/ring.md","articles":[]},{"title":"Reverse-routing","level":"1.5.2","depth":2,"path":"ring/reverse_routing.md","ref":"ring/reverse_routing.md","articles":[]},{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},{"title":"Static Resources","level":"1.5.4","depth":2,"path":"ring/static.md","ref":"ring/static.md","articles":[]},{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},{"title":"Data-driven Middleware","level":"1.5.6","depth":2,"path":"ring/data_driven_middleware.md","ref":"ring/data_driven_middleware.md","articles":[]},{"title":"Transformations Middleware Chain","level":"1.5.7","depth":2,"path":"ring/transformating_middleware_chain.md","ref":"ring/transformating_middleware_chain.md","articles":[]},{"title":"Middleware Registry","level":"1.5.8","depth":2,"path":"ring/middleware_registry.md","ref":"ring/middleware_registry.md","articles":[]},{"title":"Default Middleware","level":"1.5.9","depth":2,"path":"ring/default_middleware.md","ref":"ring/default_middleware.md","articles":[]},{"title":"Pluggable Coercion","level":"1.5.10","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},{"title":"Route Data Validation","level":"1.5.11","depth":2,"path":"ring/route_data_validation.md","ref":"ring/route_data_validation.md","articles":[]},{"title":"Compiling Middleware","level":"1.5.12","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},{"title":"Swagger Support","level":"1.5.13","depth":2,"path":"ring/swagger.md","ref":"ring/swagger.md","articles":[]}]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/ring.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter active" data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter active" data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -986,7 +999,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Route Data Validation","level":"1.5.10","depth":2,"next":{"title":"Compiling Middleware","level":"1.5.11","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},"previous":{"title":"Pluggable Coercion","level":"1.5.9","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/route_data_validation.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Route Data Validation","level":"1.5.11","depth":2,"next":{"title":"Compiling Middleware","level":"1.5.12","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},"previous":{"title":"Pluggable Coercion","level":"1.5.10","depth":2,"path":"ring/coercion.md","ref":"ring/coercion.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/route_data_validation.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter " data-level="1.5.12" data-path="swagger.html">
<li class="chapter " data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -810,7 +823,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Static Resources","level":"1.5.4","depth":2,"next":{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},"previous":{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/static.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Static Resources","level":"1.5.4","depth":2,"next":{"title":"Dynamic Extensions","level":"1.5.5","depth":2,"path":"ring/dynamic_extensions.md","ref":"ring/dynamic_extensions.md","articles":[]},"previous":{"title":"Default handler","level":"1.5.3","depth":2,"path":"ring/default_handler.md","ref":"ring/default_handler.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/static.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -459,7 +459,20 @@
</li>
<li class="chapter " data-level="1.5.7" data-path="middleware_registry.html">
<li class="chapter " data-level="1.5.7" data-path="transformating_middleware_chain.md">
<span>
Transformations Middleware Chain
</a>
</li>
<li class="chapter " data-level="1.5.8" data-path="middleware_registry.html">
<a href="middleware_registry.html">
@ -472,7 +485,7 @@
</li>
<li class="chapter " data-level="1.5.8" data-path="default_middleware.html">
<li class="chapter " data-level="1.5.9" data-path="default_middleware.html">
<a href="default_middleware.html">
@ -485,7 +498,7 @@
</li>
<li class="chapter " data-level="1.5.9" data-path="coercion.html">
<li class="chapter " data-level="1.5.10" data-path="coercion.html">
<a href="coercion.html">
@ -498,7 +511,7 @@
</li>
<li class="chapter " data-level="1.5.10" data-path="route_data_validation.html">
<li class="chapter " data-level="1.5.11" data-path="route_data_validation.html">
<a href="route_data_validation.html">
@ -511,7 +524,7 @@
</li>
<li class="chapter " data-level="1.5.11" data-path="compiling_middleware.html">
<li class="chapter " data-level="1.5.12" data-path="compiling_middleware.html">
<a href="compiling_middleware.html">
@ -524,7 +537,7 @@
</li>
<li class="chapter active" data-level="1.5.12" data-path="swagger.html">
<li class="chapter active" data-level="1.5.13" data-path="swagger.html">
<a href="swagger.html">
@ -834,78 +847,93 @@
</code></pre>
<h3 id="more-complete-example">More complete example</h3>
<ul>
<li><code>clojure.spec</code> and <code>Schema</code> coercion</li>
<li>swagger data (<code>:tags</code>, <code>:produces</code>, <code>:consumes</code>)</li>
<li>swagger-spec served from <code>&quot;/api/swagger.json&quot;</code></li>
<li><code>clojure.spec</code> coercion</li>
<li>swagger data (<code>:tags</code>, <code>:produces</code>, <code>:summary</code>)</li>
<li>swagger-spec served from <code>&quot;/swagger.json&quot;</code></li>
<li>swagger-ui mounted to <code>&quot;/&quot;</code></li>
<li><a href="https://github.com/metosin/muuntaja" target="_blank">Muuntaja</a> for request &amp; response formatting</li>
<li><code>wrap-params</code> to capture query &amp; path parameters</li>
<li>set of middleware for content negotiation, exceptions, multipart etc.</li>
<li>missed routes are handled by <code>create-default-handler</code></li>
<li>served via <a href="https://github.com/ring-clojure/ring/tree/master/ring-jetty-adapter" target="_blank">ring-jetty</a></li>
</ul>
<p>Whole example project is in <a href="https://github.com/metosin/reitit/tree/master/examples/ring-swagger" target="_blank"><code>/examples/ring-swagger</code></a>.</p>
<pre><code class="lang-clj">(<span class="hljs-name">require</span> &apos;[reitit.ring <span class="hljs-symbol">:as</span> ring]
(<span class="hljs-name">require</span> &apos;[reitit.swagger <span class="hljs-symbol">:as</span> swagger]
(<span class="hljs-name">require</span> &apos;[reitit.swagger-ui <span class="hljs-symbol">:as</span> swagger-ui]
<span class="hljs-comment">;; coercion</span>
(<span class="hljs-name">require</span> &apos;[reitit.ring.coercion <span class="hljs-symbol">:as</span> rrc]
(<span class="hljs-name">require</span> &apos;[reitit.coercion.spec <span class="hljs-symbol">:as</span> spec]
(<span class="hljs-name">require</span> &apos;[reitit.coercion.schema <span class="hljs-symbol">:as</span> schema]
(<span class="hljs-name">require</span> &apos;[schema.core <span class="hljs-symbol">:refer</span> [Int]]
<span class="hljs-comment">;; web server</span>
(<span class="hljs-name">require</span> &apos;[ring.adapter.jetty <span class="hljs-symbol">:as</span> jetty]
(<span class="hljs-name">require</span> &apos;[ring.middleware.params]
(<span class="hljs-name">require</span> &apos;[muuntaja.middleware]))
<pre><code class="lang-clj">(<span class="hljs-name"><span class="hljs-builtin-name">ns</span></span> example.server
(<span class="hljs-symbol">:require</span> [reitit.ring <span class="hljs-symbol">:as</span> ring]
[reitit.swagger <span class="hljs-symbol">:as</span> swagger]
[reitit.swagger-ui <span class="hljs-symbol">:as</span> swagger-ui]
[reitit.ring.coercion <span class="hljs-symbol">:as</span> coercion]
[reitit.coercion.spec]
[reitit.ring.middleware.muuntaja <span class="hljs-symbol">:as</span> muuntaja]
[reitit.ring.middleware.exception <span class="hljs-symbol">:as</span> exception]
[reitit.ring.middleware.multipart <span class="hljs-symbol">:as</span> multipart]
[ring.middleware.params <span class="hljs-symbol">:as</span> params]
[ring.adapter.jetty <span class="hljs-symbol">:as</span> jetty]
[muuntaja.core <span class="hljs-symbol">:as</span> m]
[clojure.java.io <span class="hljs-symbol">:as</span> io]))
(<span class="hljs-name"><span class="hljs-builtin-name">def</span></span> app
(<span class="hljs-name">ring/ring-handler</span>
(<span class="hljs-name">ring/router</span>
[<span class="hljs-string">&quot;/api&quot;</span>
[<span class="hljs-string">&quot;/swagger.json&quot;</span>
[[<span class="hljs-string">&quot;/swagger.json&quot;</span>
{<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:no-doc</span> <span class="hljs-literal">true</span>
<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:info</span> {<span class="hljs-symbol">:title</span> <span class="hljs-string">&quot;my-api&quot;</span>}}
<span class="hljs-symbol">:handler</span> (<span class="hljs-name">swagger/create-swagger-handler</span>)}}]
[<span class="hljs-string">&quot;/spec&quot;</span>
{<span class="hljs-symbol">:coercion</span> spec/coercion
<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:tags</span> [<span class="hljs-string">&quot;spec&quot;</span>]}}
[<span class="hljs-string">&quot;/files&quot;</span>
{<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:tags</span> [<span class="hljs-string">&quot;files&quot;</span>]}}
[<span class="hljs-string">&quot;/upload&quot;</span>
{<span class="hljs-symbol">:post</span> {<span class="hljs-symbol">:summary</span> <span class="hljs-string">&quot;upload a file&quot;</span>
<span class="hljs-symbol">:parameters</span> {<span class="hljs-symbol">:multipart</span> {<span class="hljs-symbol">:file</span> multipart/temp-file-part}}
<span class="hljs-symbol">:responses</span> {<span class="hljs-number">200</span> {<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:file</span> multipart/temp-file-part}}}
<span class="hljs-symbol">:handler</span> (<span class="hljs-name"><span class="hljs-builtin-name">fn</span></span> [{{{<span class="hljs-symbol">:keys</span> [file]} <span class="hljs-symbol">:multipart</span>} <span class="hljs-symbol">:parameters</span>}]
{<span class="hljs-symbol">:status</span> <span class="hljs-number">200</span>
<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:file</span> file}})}}]
[<span class="hljs-string">&quot;/download&quot;</span>
{<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:summary</span> <span class="hljs-string">&quot;downloads a file&quot;</span>
<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:produces</span> [<span class="hljs-string">&quot;image/png&quot;</span>]}
<span class="hljs-symbol">:handler</span> (<span class="hljs-name"><span class="hljs-builtin-name">fn</span></span> [_]
{<span class="hljs-symbol">:status</span> <span class="hljs-number">200</span>
<span class="hljs-symbol">:headers</span> {<span class="hljs-string">&quot;Content-Type&quot;</span> <span class="hljs-string">&quot;image/png&quot;</span>}
<span class="hljs-symbol">:body</span> (<span class="hljs-name">io/input-stream</span> (<span class="hljs-name">io/resource</span> <span class="hljs-string">&quot;reitit.png&quot;</span>))})}}]]
[<span class="hljs-string">&quot;/math&quot;</span>
{<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:tags</span> [<span class="hljs-string">&quot;math&quot;</span>]}}
[<span class="hljs-string">&quot;/plus&quot;</span>
{<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:summary</span> <span class="hljs-string">&quot;plus with spec&quot;</span>
{<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:summary</span> <span class="hljs-string">&quot;plus with spec query parameters&quot;</span>
<span class="hljs-symbol">:parameters</span> {<span class="hljs-symbol">:query</span> {<span class="hljs-symbol">:x</span> int?, <span class="hljs-symbol">:y</span> int?}}
<span class="hljs-symbol">:responses</span> {<span class="hljs-number">200</span> {<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> int?}}}
<span class="hljs-symbol">:handler</span> (<span class="hljs-name"><span class="hljs-builtin-name">fn</span></span> [{{{<span class="hljs-symbol">:keys</span> [x y]} <span class="hljs-symbol">:query</span>} <span class="hljs-symbol">:parameters</span>}]
{<span class="hljs-symbol">:status</span> <span class="hljs-number">200</span>
<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> (<span class="hljs-name"><span class="hljs-builtin-name">+</span></span> x y)}})}}]]
<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> (<span class="hljs-name"><span class="hljs-builtin-name">+</span></span> x y)}})}
<span class="hljs-symbol">:post</span> {<span class="hljs-symbol">:summary</span> <span class="hljs-string">&quot;plus with spec body parameters&quot;</span>
<span class="hljs-symbol">:parameters</span> {<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:x</span> int?, <span class="hljs-symbol">:y</span> int?}}
<span class="hljs-symbol">:responses</span> {<span class="hljs-number">200</span> {<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> int?}}}
<span class="hljs-symbol">:handler</span> (<span class="hljs-name"><span class="hljs-builtin-name">fn</span></span> [{{{<span class="hljs-symbol">:keys</span> [x y]} <span class="hljs-symbol">:body</span>} <span class="hljs-symbol">:parameters</span>}]
{<span class="hljs-symbol">:status</span> <span class="hljs-number">200</span>
<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> (<span class="hljs-name"><span class="hljs-builtin-name">+</span></span> x y)}})}}]]]
[<span class="hljs-string">&quot;/schema&quot;</span>
{<span class="hljs-symbol">:coercion</span> schema/coercion
<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:tags</span> [<span class="hljs-string">&quot;schema&quot;</span>]}}
[<span class="hljs-string">&quot;/plus&quot;</span>
{<span class="hljs-symbol">:get</span> {<span class="hljs-symbol">:summary</span> <span class="hljs-string">&quot;plus with schema&quot;</span>
<span class="hljs-symbol">:parameters</span> {<span class="hljs-symbol">:query</span> {<span class="hljs-symbol">:x</span> Int, <span class="hljs-symbol">:y</span> Int}}
<span class="hljs-symbol">:responses</span> {<span class="hljs-number">200</span> {<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> Int}}}
<span class="hljs-symbol">:handler</span> (<span class="hljs-name"><span class="hljs-builtin-name">fn</span></span> [{{{<span class="hljs-symbol">:keys</span> [x y]} <span class="hljs-symbol">:query</span>} <span class="hljs-symbol">:parameters</span>}]
{<span class="hljs-symbol">:status</span> <span class="hljs-number">200</span>
<span class="hljs-symbol">:body</span> {<span class="hljs-symbol">:total</span> (<span class="hljs-name"><span class="hljs-builtin-name">+</span></span> x y)}})}}]]]
{<span class="hljs-symbol">:data</span> {<span class="hljs-symbol">:middleware</span> [ring.middleware.params/wrap-params
muuntaja.middleware/wrap-format
swagger/swagger-feature
rrc/coerce-exceptions-middleware
rrc/coerce-request-middleware
rrc/coerce-response-middleware]
<span class="hljs-symbol">:swagger</span> {<span class="hljs-symbol">:produces</span> #{<span class="hljs-string">&quot;application/json&quot;</span>
<span class="hljs-string">&quot;application/edn&quot;</span>
<span class="hljs-string">&quot;application/transit+json&quot;</span>}
<span class="hljs-symbol">:consumes</span> #{<span class="hljs-string">&quot;application/json&quot;</span>
<span class="hljs-string">&quot;application/edn&quot;</span>
<span class="hljs-string">&quot;application/transit+json&quot;</span>}}}})
{<span class="hljs-symbol">:data</span> {<span class="hljs-symbol">:coercion</span> reitit.coercion.spec/coercion
<span class="hljs-symbol">:muuntaja</span> m/instance
<span class="hljs-symbol">:middleware</span> [<span class="hljs-comment">;; query-params &amp; form-params</span>
params/wrap-params
<span class="hljs-comment">;; content-negotiation</span>
muuntaja/format-negotiate-middleware
<span class="hljs-comment">;; encoding response body</span>
muuntaja/format-response-middleware
<span class="hljs-comment">;; exception handling</span>
exception/exception-middleware
<span class="hljs-comment">;; decoding request body</span>
muuntaja/format-request-middleware
<span class="hljs-comment">;; coercing response bodys</span>
coercion/coerce-response-middleware
<span class="hljs-comment">;; coercing request parameters</span>
coercion/coerce-request-middleware
<span class="hljs-comment">;; multipart</span>
multipart/multipart-middleware]}})
(<span class="hljs-name">ring/routes</span>
(<span class="hljs-name">swagger-ui/create-swagger-ui-handler</span>
{<span class="hljs-symbol">:path</span> <span class="hljs-string">&quot;/&quot;</span>, <span class="hljs-symbol">:url</span> <span class="hljs-string">&quot;/api/swagger.json&quot;</span>})
(<span class="hljs-name">swagger-ui/create-swagger-ui-handler</span> {<span class="hljs-symbol">:path</span> <span class="hljs-string">&quot;/&quot;</span>})
(<span class="hljs-name">ring/create-default-handler</span>))))
(<span class="hljs-name"><span class="hljs-builtin-name">defn</span></span> start []
@ -953,7 +981,6 @@
</code></pre>
<h3 id="todo">TODO</h3>
<ul>
<li>create a data-driven version of <a href="https://github.com/metosin/muuntaja" target="_blank">Muuntaja</a> that integrates into <code>:produces</code> and <code>:consumes</code></li>
<li>ClojureScript<ul>
<li>example for <a href="https://github.com/macchiato-framework" target="_blank">Macchiato</a></li>
<li>body formatting</li>
@ -1004,7 +1031,7 @@
<script>
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"Swagger Support","level":"1.5.12","depth":2,"next":{"title":"Frontend","level":"1.6","depth":1,"path":"frontend/README.md","ref":"frontend/README.md","articles":[{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]}]},"previous":{"title":"Compiling Middleware","level":"1.5.11","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/swagger.md","mtime":"2018-08-22T17:24:29.926Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T17:25:09.089Z"},"basePath":"..","book":{"language":""}});
gitbook.page.hasChanged({"page":{"title":"Swagger Support","level":"1.5.13","depth":2,"next":{"title":"Frontend","level":"1.6","depth":1,"path":"frontend/README.md","ref":"frontend/README.md","articles":[{"title":"Basics","level":"1.6.1","depth":2,"path":"frontend/basics.md","ref":"frontend/basics.md","articles":[]},{"title":"Browser integration","level":"1.6.2","depth":2,"path":"frontend/browser.md","ref":"frontend/browser.md","articles":[]},{"title":"Controllers","level":"1.6.3","depth":2,"path":"frontend/controllers.md","ref":"frontend/controllers.md","articles":[]}]},"previous":{"title":"Compiling Middleware","level":"1.5.12","depth":2,"path":"ring/compiling_middleware.md","ref":"ring/compiling_middleware.md","articles":[]},"dir":"ltr"},"config":{"plugins":["editlink","github","highlight"],"root":"doc","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"editlink":{"label":"Edit This Page","multilingual":false,"base":"https://github.com/metosin/reitit/tree/master/doc"},"github":{"url":"https://github.com/metosin/reitit"},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"gitbook":"*"},"file":{"path":"ring/swagger.md","mtime":"2018-08-22T18:51:30.952Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2018-08-22T18:52:11.735Z"},"basePath":"..","book":{"language":""}});
});
</script>
</div>

View file

@ -0,0 +1,37 @@
# Transformation Middleware Chain
There is an extra option in ring-router (actually, in the underlying middleware-router): `:reitit.middleware/transform` to transform the middleware chain per endpoint. It gets the vector of compiled middleware and should return a new vector of middleware.
## Adding debug middleware between all other middleware
```clj
(def app
(ring/ring-handler
(ring/router
["/api" {:middleware [[wrap 1] [wrap2 2]]}
["/ping" {:get {:middleware [[wrap3 3]]
:handler handler}}]]
{::middleware/transform #(interleave % (repeat [wrap :debug]))})))
```
```clj
(app {:request-method :get, :uri "/api/ping"})
; {:status 200, :body [1 :debug 2 :debug 3 :debug :handler]}
```
## Reversing the middleware chain
```clj
(def app
(ring/ring-handler
(ring/router
["/api" {:middleware [[wrap 1] [wrap2 2]]}
["/ping" {:get {:middleware [[wrap3 3]]
:handler handler}}]]
{::middleware/transform reverse)})))
```
```clj
(app {:request-method :get, :uri "/api/ping"})
; {:status 200, :body [3 2 1 :handler]}
```

File diff suppressed because one or more lines are too long