* caddyhttp: Implement named routes, `invoke` directive * gofmt * Add experimental marker * Adjust route compile comments
2.2 KiB
&(first) { @first path /first vars @first first 1 respond "first" }
&(second) { respond "second" }
:8881 { invoke first route { invoke second } }
:8882 { handle { invoke second } }
:8883 { respond "no invoke" }
{ "apps": { "http": { "servers": { "srv0": { "listen": [ ":8881" ], "routes": [ { "handle": [ { "handler": "invoke", "name": "first" }, { "handler": "subroute", "routes": [ { "handle": [ { "handler": "invoke", "name": "second" } ] } ] } ] } ], "named_routes": { "first": { "handle": [ { "handler": "subroute", "routes": [ { "handle": [ { "first": 1, "handler": "vars" } ], "match": [ { "path": [ "/first" ] } ] }, { "handle": [ { "body": "first", "handler": "static_response" } ] } ] } ] }, "second": { "handle": [ { "body": "second", "handler": "static_response" } ] } } }, "srv1": { "listen": [ ":8882" ], "routes": [ { "handle": [ { "handler": "subroute", "routes": [ { "handle": [ { "handler": "invoke", "name": "second" } ] } ] } ] } ], "named_routes": { "second": { "handle": [ { "body": "second", "handler": "static_response" } ] } } }, "srv2": { "listen": [ ":8883" ], "routes": [ { "handle": [ { "body": "no invoke", "handler": "static_response" } ] } ] } } } } }