# HG changeset patch # User Matthew Wild # Date 1335213245 -3600 # Node ID 0e0a72679f778cd3ef8f833273ad83866e57bce2 # Parent cce0c739b0d70c6e486b5e712dc0c9823e099bbc mod_http: Pass portion of path that matched wildcard to wildcard handlers, as a second parameter diff -r cce0c739b0d7 -r 0e0a72679f77 plugins/mod_http.lua --- a/plugins/mod_http.lua Mon Apr 23 21:29:18 2012 +0100 +++ b/plugins/mod_http.lua Mon Apr 23 21:34:05 2012 +0100 @@ -46,6 +46,14 @@ for key, handler in pairs(event.item.route or {}) do local event_name = get_http_event(host, app_path, key); if event_name then + if event_name:sub(-2, -1) == "/*" then + local base_path = event_name:match("/(.+)/*$"); + local _handler = handler; + handler = function (event) + local path = event.request.path:sub(#base_path+1); + return _handler(event, path); + end; + end if not app_handlers[event_name] then app_handlers[event_name] = handler; server.add_handler(event_name, handler);