mirror of
https://github.com/hkalexling/Mango.git
synced 2026-04-25 00:00:52 -04:00
- formating
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
require "baked_file_system"
|
||||
require "kemal"
|
||||
require "gzip"
|
||||
require "./util"
|
||||
|
||||
class FS
|
||||
extend BakedFileSystem
|
||||
bake_folder "../public"
|
||||
end
|
||||
|
||||
class StaticHandler < Kemal::Handler
|
||||
property dirs : Array(String)
|
||||
|
||||
def initialize
|
||||
@dirs = ["/css", "/js"]
|
||||
end
|
||||
|
||||
def call(env)
|
||||
if request_path_startswith env, @dirs
|
||||
file = FS.get? env.request.path
|
||||
return call_next env if file.nil?
|
||||
|
||||
slice = Bytes.new file.size
|
||||
file.read slice
|
||||
return send_file env, slice, file.mime_type
|
||||
end
|
||||
call_next env
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user