summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorBen Busby <contact@benbusby.com>2022-12-11 13:14:40 -0700
committerBen Busby <contact@benbusby.com>2022-12-11 13:14:40 -0700
commit2a858b89d26ea03c3bbd6646ae65cf2ac70fd98e (patch)
treee25c80b308cbcb72dd0b4616c705dc2015714d22 /lib
parentf91e4906966c632d1ff3897d4db9672a85d033a6 (diff)
downloadfarside-2a858b89d26ea03c3bbd6646ae65cf2ac70fd98e.tar.gz
Ignore request types in router
Request types don't really matter in Farside, and should be ignored. This updates the router to handle all request types (GET, HEAD, POST, etc) the same as GET requests were handled previously.
Diffstat (limited to 'lib')
-rw-r--r--lib/farside.ex2
-rw-r--r--lib/farside/router.ex6
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/farside.ex b/lib/farside.ex
index e680cdc..345d2c1 100644
--- a/lib/farside.ex
+++ b/lib/farside.ex
@@ -91,7 +91,7 @@ defmodule Farside do
# Either pick a random available instance,
# or fall back to the default one
instance =
- if Enum.count(instances) > 0 do
+ if instances != nil && Enum.count(instances) > 0 do
if Enum.count(instances) == 1 do
# If there's only one instance, just return that one...
List.first(instances)
diff --git a/lib/farside/router.ex b/lib/farside/router.ex
index a11e07a..ce0eb0a 100644
--- a/lib/farside/router.ex
+++ b/lib/farside/router.ex
@@ -18,7 +18,7 @@ defmodule Farside.Router do
end
end
- get "/" do
+ match "/" do
resp =
EEx.eval_file(
@index,
@@ -29,7 +29,7 @@ defmodule Farside.Router do
send_resp(conn, 200, resp)
end
- get "/_/:service/*glob" do
+ match "/_/:service/*glob" do
r_path = String.slice(conn.request_path, 2..-1)
resp =
@@ -41,7 +41,7 @@ defmodule Farside.Router do
send_resp(conn, 200, resp)
end
- get "/:service/*glob" do
+ match "/:service/*glob" do
service_name = cond do
service =~ "http" ->
List.first(glob)