flame 4.9.0 → 4.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/flame/dispatcher.rb +8 -1
- data/lib/flame/request.rb +5 -0
- data/lib/flame/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8395ff4675716dc3fb9aa3aa58b997624ca10d57
|
4
|
+
data.tar.gz: c612ae674eeb4571b71f42fcb39e60ccc8fc4f1f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 639a69107187f6e64953d34c99abf822058c35ec320db0f0f54d84692f0810070825eec83bfeec11276e84e5f506277fa517d6f3a93a5e04bcfe08b684ecdd51
|
7
|
+
data.tar.gz: eed88fd30af185d4590519ad5e817744287082e7bedbb23de02c33662f3cc0b075d71b48a0d5c59300e81495036ba544b62eb6d1191a7f3755b44e7d592dac39
|
data/lib/flame/dispatcher.rb
CHANGED
@@ -25,7 +25,8 @@ module Flame
|
|
25
25
|
## Start of execution the request
|
26
26
|
def run!
|
27
27
|
catch :halt do
|
28
|
-
|
28
|
+
try_fix_slashes ||
|
29
|
+
try_route ||
|
29
30
|
try_static ||
|
30
31
|
try_static(File.join(__dir__, '..', '..', 'public')) ||
|
31
32
|
halt(404)
|
@@ -145,6 +146,12 @@ module Flame
|
|
145
146
|
|
146
147
|
private
|
147
148
|
|
149
|
+
## Redirect from urls endings by slashes to same url without slashes
|
150
|
+
def try_fix_slashes
|
151
|
+
return if request.fullpath == request.fullpath_without_trailing_slashes
|
152
|
+
response.redirect(request.fullpath_without_trailing_slashes, 301)
|
153
|
+
end
|
154
|
+
|
148
155
|
## Find route and try execute it
|
149
156
|
def try_route
|
150
157
|
route = @app.class.router.find_route(
|
data/lib/flame/request.rb
CHANGED
data/lib/flame/version.rb
CHANGED