aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_req.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2017-12-06 14:05:30 +0100
committerLoïc Hoguin <[email protected]>2017-12-06 14:05:30 +0100
commitbc39b433bb20c44690b75bf28539983517002268 (patch)
treec335c45a92f535d2100d04f8a9df8899f459b013 /src/cowboy_req.erl
parent2eb3e3f994e464ae2678f7c3d321213e5eec9ad4 (diff)
downloadcowboy-bc39b433bb20c44690b75bf28539983517002268.tar.gz
cowboy-bc39b433bb20c44690b75bf28539983517002268.tar.bz2
cowboy-bc39b433bb20c44690b75bf28539983517002268.zip
Properly handle OPTIONS * requests
Support for these was broken during the development of Cowboy 2.0. It is now fixed and better handled than it ever was.
Diffstat (limited to 'src/cowboy_req.erl')
-rw-r--r--src/cowboy_req.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/cowboy_req.erl b/src/cowboy_req.erl
index e38b76c..552f409 100644
--- a/src/cowboy_req.erl
+++ b/src/cowboy_req.erl
@@ -228,8 +228,10 @@ uri(#{scheme := Scheme0, host := Host0, port := Port0,
end,
Host = maps:get(host, Opts, Host0),
Port = maps:get(port, Opts, Port0),
- Path = maps:get(path, Opts, Path0),
- Qs = maps:get(qs, Opts, Qs0),
+ {Path, Qs} = case maps:get(path, Opts, Path0) of
+ <<"*">> -> {<<>>, <<>>};
+ P -> {P, maps:get(qs, Opts, Qs0)}
+ end,
Fragment = maps:get(fragment, Opts, undefined),
[uri_host(Scheme, Scheme0, Port, Host), uri_path(Path), uri_qs(Qs), uri_fragment(Fragment)].