Skip to content

camshaft/cowboy_compiled_router

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cowboy_compiled_router

compiled router for cowboy

Example

Create a module with the parse_transform:

-module(my_router).

-compile({parse_transform, cowboy_compiled_router}).

-get({"/", root_handler}).
-get({"/about-us", about_us_handler}).

-host("example.com").
  -post({"/", root_create_handler}).
  -get({"/users", users_handler, [{users, [<<"joe">>, <<"mike">>, <<"robert">>]}]}).
  -get({"/users/:user", user_handler}).

-host(":user.example.com").
  -get({"/", user_handler}).

-host('_').
  -handle({"/[...]", catchall_handler}).

Use my_router instead of cowboy_router:

{ok, _} = cowboy:start_http(http, 100, [{port, 8080}], [
  {middlewares, [
    my_router,
    cowboy_handler
  ]}
]),

Tests

$ make test

About

compiled router for cowboy

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published